Ext.ns('Escritorio.Funciones');
var jsonStore = {};
var IdTipoTrabajadorr= null;
var IdEjercio = null;
var fecha = null;

var IdEjercio2 = null;
var IdTipoTrabajadorr2 = null;
var IdEjercicios3 = null;
var IdMesReporte = null;
var IdEjercicioAFP = null;
Escritorio.Funciones = {
    Ancho: function (opts) {

        var widthDesktop = opts.desktop.getWinWidth(), rest = opts.rest || 0;
        if (widthDesktop > 1024) {
            rest += 200;
        }
        else if (widthDesktop > 800) {
            rest += 80;
        }
        else {
            rest += 30;
        }
        return widthDesktop - rest;
    },

    Alto: function (opts) {

        var heightDesktop = opts.desktop.getWinHeight(), rest = opts.rest || 0;
        if (heightDesktop > 700) {
            rest += 100;
        }
        else if (heightDesktop > 500) {
            rest += 30;
        }
        else {
            rest += 10;
        }
        return heightDesktop - rest;
    } ,
    ArbolRRHH : function(){
         var root = {
                    text:'Online',
                    expanded: true,
                    children:[

                    {id:'personal',text:'Personal',leaf:true, hrefTarget:'personal/index'},
                    {text:'Planilla',expanded: true,children:[
                            {id:'boletaplanilla',text:'Planilla General',leaf:true, hrefTarget:'boletaplanilla/index'},
                            {id:'AreasPlanilla',text:'Planilla Areas',leaf:true, hrefTarget:'planilla/Areas'},
                       
                        ]},
                    {text:'Parametros',expanded: true,children:[
                            {id:'costosistemadepensiones',text:'Costo Sistema Pensiones',leaf:true, hrefTarget:'costosistemadepensiones/index'},
                            {id:'epsserviciospropio',text:'EPS Servicios Propios',leaf:true, hrefTarget:'epsserviciospropio/index'},
                            {id:'tipoafiliacion',text:'Tipo Afiliacion',leaf:true, hrefTarget:'tipoafiliacion/index'},
                            {id:'LimitesRentaQuinta',text:'Limites de Renta de Quinta',leaf:true, hrefTarget:'limitesrquinta/index'}
                           /* ,
                            {id:'parametrosgenerales',text:'Parametros Generales',leaf:true, hrefTarget:'parametro/index'},*/
                        ]},
                    {text:'Consultas',expanded: true,children:[
                            {id:'directoriopersonal',text:'Directorio Personal',leaf:true, hrefTarget:'personal/directorio'},
                            {id:'bonifi35',text:'Bonificacion 35 %',leaf:true, hrefTarget:'bonifi35/index/'},
                            {id:'cargaasistencia',text:'Asistencia',leaf:true, hrefTarget:''}

                        ]},
                    {text:'Organizacion',expanded: true,children:[
                            { id: 'organigrama', text: 'Organigrama', leaf: true, hrefTarget: 'area/organigrama' },
                            { id: 'cargo',text:'Cargos',leaf:true, hrefTarget:'cargo/index'}
                        ]},
                    {text:'Provisiones',expanded: true,children:[
                            {id:'prvvacacion',text:'Vacaciones',leaf:true, hrefTarget:'prvvacacion/index'},
                            {id:'prvcts',text:'CTS',leaf:true, hrefTarget:'cts/index'},     
                        ]},
                    {text:'Vacaciones',expanded: true,children:[
                            {id:'vacacionespordias',text:'Vacaciones Por Dias',leaf:true, hrefTarget:'recordvacacion/indexvd'},
                            {id:'cambiodeCC',text:'Cambio de CC',leaf:true, hrefTarget:'prvcts/index'}//cambiar url
                        ]},
                    {text:'CTS',expanded: true,children:[
                            {id:'ctserv',text:'CTS General',leaf:true, hrefTarget:'ctserv/index'},
                            {id:'ctsareas',text:'CTS Por Areas',leaf:true, hrefTarget:'ctserv/IndexProyecto'},
                            {id:'ctsprov',text:'Cambio de CC',leaf:true, hrefTarget:'nctserv/Provisio'},
                            {id:'rptCTS',text:'Reporte Utl. Sueldos',leaf:true, hrefTarget:'cts/IndexRpt'},
                        ]},
                    {text:'Reportes',expanded: true,children:[
                            {id:'rquintatodos',text:'Reporte de Quinta Categoria',leaf:true, hrefTarget:''},
                            {id:'rafpnet',text:'Reporte AFP NET',leaf:true, hrefTarget:'afp/IndexRpt'}
                        ]}
                    ]
                }
          return root;
    },
    StoreModel: function (opts) {
        var jsonStore = new Ext.data.Store({
            model: opts.model,
            pageSize: opts.pageSize || null,
            groupField: opts.groupField||null,
            groupDir: opts.groupDir || null,
            proxy: {
                type: 'ajax',
                url: opts.url,
                reader: {
                    type: 'json',
                    root: 'grid',
                    totalProperty: 'total'//<-- Total de registros a paginar    
                },
            simpleSortMode: true
            }
        });
        return jsonStore;
    },
      StoreSimple: function (opts) {

         jsonStore = new Ext.data.Store({
            fields: opts.fields,
            pageSize: opts.pageSize || null,
            groupField: opts.groupField||null,
            groupDir: opts.groupDir || null,
            proxy: {
                type: 'ajax',
                url: opts.url,
                reader: {
                    type: 'json',
                    root: 'grid',
                    totalProperty: 'total'//<-- Total de registros a paginar    
                },
            simpleSortMode: true
            }
        });
        if(opts.url==('cuota/IndexById/'+opts.idCuota)){
            jsonStore.load();
        };
        if(opts.url==('personal/indexActivos/')){
            jsonStore.load();
            alert('la url es:'+opts.url);
        };
         if(opts.url==('personal/index/')){
            jsonStore.load();
            alert('la url es:'+opts.url);
        };
        return jsonStore; 
       

    },

    StoreSimple2: function () {
        jsonStore.setProxy({
         type: 'ajax',
         url: 'personal/indexActivos',
         reader: {
                   type: 'json',
                   root: 'grid',
                    totalProperty: 'total'
                    },
          simpleSortMode: true
          });
            jsonStore.load();
             return jsonStore; 
       
    },

    StoreSimple4: function (opts) {
        jsonStore.setProxy({
         type: 'ajax',
         url: opts,
         reader: {
                   type: 'json',
                   root: 'grid',
                    totalProperty: 'total'
                    },
          simpleSortMode: true
          });

            jsonStore.load();
             return jsonStore; 
       
    },

    StoreSimple3: function () {
            jsonStore.setProxy({
                type: 'ajax',
                url: 'personal/index',
                reader: {
                    type: 'json',
                    root: 'grid',
                    totalProperty: 'total'
                },
            });
            //jsonStore = {};
            jsonStore.reload();
            jsonStore.load();
              return jsonStore; 
    },
        StoreSimple10: function () {
            jsonStore.setProxy({
                type: 'ajax',
                url: 'recordvacacion/Indexvd',
                reader: {
                    type: 'json',
                    root: 'grid',
                    totalProperty: 'total'
                },
            });
            //jsonStore = {};
            jsonStore.load();
              return jsonStore; 
    },
    StoreSimple11: function () {
            jsonStore.setProxy({
                type: 'ajax',
                url: 'recordvacacion/IndexvdTodos',
                reader: {
                    type: 'json',
                    root: 'grid',
                    totalProperty: 'total'
                },
            });
            //jsonStore = {};
            jsonStore.load();
              return jsonStore; 
    },


        StoreSimple4: function () {
            jsonStore.setProxy({
                type: 'ajax',
                url: 'personal/directorioactivos',
                reader: {
                    type: 'json',
                    root: 'grid',
                    totalProperty: 'total'
                },
            });
            //jsonStore = {};
            //jsonStore.reload();
            jsonStore.load();
              return jsonStore; 
    },

    StoreSimple5: function () {
            jsonStore.setProxy({
                type: 'ajax',
                url: 'personal/directorio',
                reader: {
                    type: 'json',
                    root: 'grid',
                    totalProperty: 'total'
                },
            });
            //jsonStore = {};
            //jsonStore.reload();
            jsonStore.load();
              return jsonStore; 
    },
    
    Window2: function (btn) {
            var Seleccion;
            var id;
            if (btn.itemId == 'delete') {
                Seleccion = Ext.getCmp('images-view').getSelectionModel().getSelection()[0];
                if (!Seleccion) {
                    Ext.Msg.show({
                        title: 'Advertencia',
                        msg: 'Seleccione Persona a ELIMINAR',
                        icon: Ext.MessageBox.ERROR,
                        buttons: Ext.Msg.OK
                    });
                    return false;
                }
                else {
                    id = Seleccion.get('Id');
                    //alert(id);
                    btn.Seleccion = Seleccion
                }
            } 
            return Ext.Msg.show({
                        title: 'ADVERTENCIA',
                        msg: 'DESEA ELIMINAR LA PERSONA SELECCIONADA',
                        icon: Ext.MessageBox.ERROR,
                        buttons: Ext.Msg.YESNO,
                        fn: function(btn){btn=='yes'? new Escritorio.Funciones.Eliminar(id):''}
                    });
    },

    Window3: function (btn) {
            var Seleccion;
            var id;
            if (btn.itemId == 'delete') {
                Seleccion = Ext.getCmp('PrestamosListados').getSelectionModel().getSelection()[0];
                if (!Seleccion) {
                    Ext.Msg.show({
                        title: 'Advertencia',
                        msg: 'Seleccione Prestamo a ELIMINAR',
                        icon: Ext.MessageBox.ERROR,
                        buttons: Ext.Msg.OK
                    });
                    return false;
                }
                else {
                    id = Seleccion.get('Id');
                    btn.Seleccion = Seleccion
                }
            } 
            return Ext.Msg.show({
                        title: 'ADVERTENCIA',
                        msg: 'DESEA ELIMINAR EL PRESTAMO SELECCIONADO',
                        icon: Ext.MessageBox.ERROR,
                        buttons: Ext.Msg.YESNO,
                        fn: function(btn){btn=='yes'? new Escritorio.RRHH.EliminarPrestamo(id):''}
                    });
    },
   
     

    Eliminar : function(idPersona){

                    
                    Ext.Ajax.request({
                        url: 'personal/delete/'+idPersona,
                        method: 'POST',
                        success: function (httpReq) {
                            var textRes = httpReq.responseText;
                            if (textRes == 'OK') {
                                jsonStore.load();
                            } else {
                                Ext.Msg.show({
                                    title: 'Advertencia',
                                    msg: 'No Se Pudo Eliminar el Registro debido a una relacion de BD, compruebe periodos laborales y contratos',
                                    icon: Ext.MessageBox.ERROR,
                                    buttons: Ext.Msg.OK
                                });
                            }
                            if (textRes == 'Boleta') {
                                Ext.Msg.show({
                                    title: 'Advertencia',
                                    msg: 'No Se Pudo Eliminar el Registro debido a que existe una Boleta Pagada',
                                    icon: Ext.MessageBox.ERROR,
                                    buttons: Ext.Msg.OK
                                });
                            }
                        },
                        failure: function () {
                            alert('Error, Ha ocurrido un error al procesar los datos');
                        }
                    });
                    
        },

    EliminarPrestamo: function(idPrestamo){
                        Ext.Ajax.request({
                        url: 'cuota/delete/'+idPrestamo,
                        method: 'POST',
                        success: function (httpReq) {
                            var textRes = httpReq.responseText;
                            if (textRes == 'OK') {
                                jsonStore.load();
                            } else {
                                Ext.Msg.show({
                                    title: 'Advertencia',
                                    msg: 'No Se Pudo Eliminar el Registro debido a una relacion de BD, compruebe periodos laborales y contratos',
                                    icon: Ext.MessageBox.ERROR,
                                    buttons: Ext.Msg.OK
                                });
                            }
                            if (textRes == 'Boleta') {
                                Ext.Msg.show({
                                    title: 'Advertencia',
                                    msg: 'No Se Pudo Eliminar el Registro debido a que existe una Boleta Pagada',
                                    icon: Ext.MessageBox.ERROR,
                                    buttons: Ext.Msg.OK
                                });
                            }
                        },
                        failure: function () {
                            alert('Error, Ha ocurrido un error al procesar los datos');
                        }
                    });
        },
    EliminarDescuento: function(idDescuento){
                        Ext.Ajax.request({
                        url: 'descuento/delete/'+idDescuento,
                        method: 'POST',
                        success: function (httpReq) {
                            var textRes = httpReq.responseText;
                            if (textRes == 'OK') {
                                jsonStore.load();
                            } else {
                                Ext.Msg.show({
                                    title: 'Advertencia',
                                    msg: 'No Se Pudo Eliminar el Registro debido a una relacion de BD, compruebe periodos laborales y contratos',
                                    icon: Ext.MessageBox.ERROR,
                                    buttons: Ext.Msg.OK
                                });
                            }
                            if (textRes == 'Boleta') {
                                Ext.Msg.show({
                                    title: 'Advertencia',
                                    msg: 'No Se Pudo Eliminar el Registro debido a que existe una Boleta Pagada',
                                    icon: Ext.MessageBox.ERROR,
                                    buttons: Ext.Msg.OK
                                });
                            }
                        },
                        failure: function () {
                            alert('Error, Ha ocurrido un error al procesar los datos');
                        }
                    });
        },
    Eliminarhabiente: function(idDescuento){
       // alert('INGRESO :)');
                        Ext.Ajax.request({
                        url: 'derechohabiente/delete/'+idDescuento,
                        method: 'POST',
                        success: function (httpReq) {
                            var textRes = httpReq.responseText;
                            if (textRes == 'OK') {
                                jsonStore.load();
                            } else {
                                Ext.Msg.show({
                                    title: 'Advertencia',
                                    msg: 'No Se Pudo Eliminar el Registro debido a una relacion de BD, compruebe periodos laborales y contratos',
                                    icon: Ext.MessageBox.ERROR,
                                    buttons: Ext.Msg.OK
                                });
                            }
                            if (textRes == 'Boleta') {
                                Ext.Msg.show({
                                    title: 'Advertencia',
                                    msg: 'No Se Pudo Eliminar el Registro debido a que existe una Boleta Pagada',
                                    icon: Ext.MessageBox.ERROR,
                                    buttons: Ext.Msg.OK
                                });
                            }
                        },
                        failure: function () {
                            alert('Error, Ha ocurrido un error al procesar los datos');
                        }
                    });
        },

    Eliminarlimitequinta: function(idlimquinta){
                        Ext.Ajax.request({
                        url: 'limitesrquinta/delete/'+idlimquinta,
                        method: 'POST',
                        success: function (httpReq) {
                            var textRes = httpReq.responseText;
                            if (textRes == 'OK') {
                                jsonStore.load();
                            } else {
                                Ext.Msg.show({
                                    title: 'Advertencia',
                                    msg: 'No Se Pudo Eliminar el Registro debido a una relacion de BD, compruebe periodos laborales y contratos',
                                    icon: Ext.MessageBox.ERROR,
                                    buttons: Ext.Msg.OK
                                });
                            }
                            if (textRes == 'Boleta') {
                                Ext.Msg.show({
                                    title: 'Advertencia',
                                    msg: 'No Se Pudo Eliminar el Registro debido a que existe una Boleta Pagada',
                                    icon: Ext.MessageBox.ERROR,
                                    buttons: Ext.Msg.OK
                                });
                            }
                        },
                        failure: function () {
                            alert('Error, Ha ocurrido un error al procesar los datos');
                        }
                    });
        },

      showIndividualGraph : function(btn){

            Ext.MessageBox.alert('Clicked!',btn.Id);

        },

    StoreTree: function (opts) {
        var jsonStore = new Ext.data.TreeStore({
            fields: opts.fields,
            pageSize: opts.pageSize || null,
            groupField: opts.groupField||null,
            proxy: {
                type: 'ajax',
                url: opts.url,
                reader: {
                    type: 'json',
                    //root: 'grid',
                    totalProperty: 'total'//<-- Total de registros a paginar    
                },
            simpleSortMode: true
            }
        });
        return jsonStore;
    },  
    
    StoreTreeO: function(opts){
       
    var store = Ext.create('Ext.data.TreeStore', {
        fields: opts.fields,
        proxy: {
            type: 'ajax',
            url: opts.url
        },
        root: { text: 'DIRECCION', id: '2', nivel: '0', expanded: true},
        folderSort: true,
        sorters: opts.sorters
    });
    
        return store;
       
    },
    Bar: function (opts){
        var base=new Ext.Toolbar({
         renderTo: document.body,
         height: 30,
         items: [
           // begin using the right-justified button container
           '->',
           {
             xtype:'button',
             text:'The button',
             //makes the button 24px high, there is also 'large' for this config
             scale: 'medium'
           }
         ]
        })
        return base;
    }
    ,
    Paginacion: function (opts){
        var paginacion = Ext.create('Ext.PagingToolbar', {
            store: opts.store,
            displayInfo: true,
            displayMsg: 'Registros {0} - {1} de {2}',
            emptyMsg: "No Existe Registros para Mostrar"
        });
        return paginacion;
    },
    GridSimple: function (opts){
    var grid = Ext.create('Ext.grid.Panel', {
        layout:'fit',
        //height: 500,
        title: opts.title,
        store: opts.store,
        id: opts.id,
        border:false,
        //autoScroll : true,
        //overflowY :'scroll',
        columnLines: true,
        //disableSelection: true,
        //loadMask: true,
        viewConfig: {
            //id: 'gv',
            //trackOver: false,
            stripeRows: true
            /*
            plugins: [{
                ptype: 'preview',
                bodyField: 'excerpt',
                expanded: true,
                pluginId: 'preview'
            }]*/
        },
        tbar:opts.tbar || null,
        // grid columns
        columns:opts.columns,
        plugins:opts.plugins || null,
        ///Elimira desde aqui
        //collapsible: true,
        stateful : false,
        bbar: opts.bbar
    }); 
    return grid;
    },

    GridSimple2: function (opts){
    var grid = Ext.create('Ext.grid.Panel', {
        store: opts.store,
       id: opts.id,
        columns:opts.columns,
        viewConfig: {
            stripeRows: true
        },
        plugins:opts.plugins || null,
    }); 
    return grid;

    },

    GridAgrupado: function (opts){
    var grid = Ext.create('Ext.grid.Panel', {
        title: opts.title,
        store: opts.store,
        id: opts.id,
        border:false,
        features: [opts.groupingFeature || null],
        //disableSelection: true,
        loadMask: true,
        columnLines: true,
        viewConfig: {
            //id: 'gv',
            //trackOver: false,
            stripeRows: true
            /*
            plugins: [{
                ptype: 'preview',
                bodyField: 'excerpt',
                expanded: true,
                pluginId: 'preview'
            }]*/
        },
        tbar:opts.tbar || null,
        // grid columns
        columns:opts.columns,
        plugins:opts.plugins || null,
        // paging bar on the bottom
        bbar: opts.bbar

    }); 
    return grid;
    },    
    GridBuscar: function (opts){
    var grid = Ext.create('Ext.grid.Panel', {
        width: 700,
        height: 500,
        title: 'Productores',
        store: opts.store,
        id: opts.id,
        border:false,
        //disableSelection: true,
        loadMask: true,
        viewConfig: {
            //id: 'gv',
            //trackOver: false,
            stripeRows: false/*
            plugins: [{
                ptype: 'preview',
                bodyField: 'excerpt',
                expanded: true,
                pluginId: 'preview'
            }]*/
        },
        // grid columns
        columns:opts.columns,
        // paging bar on the bottom
        bbar: opts.bbar

    }); 
    return grid;
    },
    ComboBuscarCaserio : function (opts){
        var s = {};
        s.url = 'caserio/index';
        s.fields =   ['Id','Caserio','Centropoblado','Distrito'];
        s.pageSize = 150;
        s.store  =   Escritorio.Funciones.StoreSimple(s);

        var combo = Ext.create('Ext.form.ComboBox', {
        store: s.store,
        enableKeyEvents:true,
        multiSelect : true,
        editable : false,
        minChars : 2,
        id:'Comboubicacionx',
        displayField: 'Caserio',
        forceSelection : true,
        queryMode: 'remote',
        triggerAction: 'all',
        valueField  : 'Id',
        emptyText : 'Seleccione Caserio',
        width:300,
        listConfig: {
            loadingText: 'Buscando...',
            emptyText: 'Sin Resultados',
            getInnerTpl: function() {
                return '<a>' +
                    '<h3></span>{Caserio}'+'</h3>' +
                    '<h4 class="ccpp">CCPP: {Centropoblado}</h4>' +
                    '<h5 class="ccpp">DIST: {Distrito}</h5>' +
                '</a>';
            }
        },
        pageSize: 150
        });
        
         /*       
        combo.on('select',function(store,records){
            //alert('evento');
            var acumula = 0;
                //Ext.getCmp('Combocategoriax').enable();
                
               //records[0].get('Id')
               //alert(records.lenght())
               records.each(function(record) {
                    //alert(record.get('Id'));
                    acumula = acumula.toString()+','+record.get('Id').toString();
                });
                //alert(acumula);
               var proxy = opts.store.getProxy();
               proxy.extraParams['caserio'] = acumula;
               //proxy.extraParams.start = 0;
               opts.store.loadPage(1);
            });
            */
            
            combo.on('change',function(x,y){
                //alert(y);
                var proxy = opts.store.getProxy();
                proxy.extraParams['caserio'] = y;
                opts.store.loadPage(1);

                });
            
        return combo;
    },
FechaInicioFin : function (p){
            var cfecha1 = Ext.create('Ext.form.field.Date', {
                renderTo: Ext.get('divFechaInicio'),
                name:'FechaInicio',
                id:'dtpfechainicio',
                enableKeyEvents :true,
                blankText :'Campo Fecha Inicio es Obligatorio',
                editable :true,
                anchor: '100%'
            });
            var cfecha2 = Ext.create('Ext.form.field.Date', {
                renderTo: Ext.get('divFechaFin'),
                name:'FechaFin',
                id:'dtpfechafin',
                enableKeyEvents :true,
                blankText :'Campo Fecha Fin es Obligatorio',
                editable :true,
                anchor: '100%'
            });
            
            if(p.fechainicio){cfecha1.setRawValue(p.fechainicio)}            
            if(p.fechafin){cfecha2.setRawValue(p.fechafin)}
//Evento keyup de las fechas
cfecha1.on('blur',function(fecha){
    var vector1 = cfecha1.getRawValue().split("/");
    var vector2 = cfecha2.getRawValue().split("/");
    var myDate1 = new Date(vector1[2]+"/"+vector1[1]+"/"+vector1[0]);
    var myDate2 = new Date(vector2[2]+"/"+vector2[1]+"/"+vector2[0]);
    var dias = (myDate2-myDate1)/86400000;
    if (dias && dias>0){p.validarfechas = dias;}
    else{p.validarfechas = 0;}
    //alert(p.validarfechas);
});

cfecha2.on('blur',function(fecha){
    var vector1 = cfecha1.getRawValue().split("/");
    var vector2 = cfecha2.getRawValue().split("/");
    var myDate1 = new Date(vector1[2]+"/"+vector1[1]+"/"+vector1[0]);
    var myDate2 = new Date(vector2[2]+"/"+vector2[1]+"/"+vector2[0]);
    var dias = (myDate2-myDate1)/86400000;
    if (dias && dias>0){
        p.validarfechas = dias;
    }
    else{
        p.validarfechas = 0;
    }
    //alert(p.validarfechas);
});            
},  
FechaInicioFinRV : function (p){
            var cfecha1 = Ext.create('Ext.form.field.Date', {
                renderTo: Ext.get('divFechaInicio'),
                name:'FechaInicio',
                id:'dtpfechainicio',
                enableKeyEvents :true,
                blankText :'Campo Fecha Inicio es Obligatorio',
                editable :true,
                anchor: '100%'
            });
            var cfecha2 = Ext.create('Ext.form.field.Date', {
                renderTo: Ext.get('divFechaFin'),
                name:'FechaFin',
                id:'dtpfechafin',
                enableKeyEvents :true,
                blankText :'Campo Fecha Fin es Obligatorio',
                editable :true,
                anchor: '100%'
            });
            
            if(p.fechainicio){cfecha1.setRawValue(p.fechainicio)}            
            if(p.fechafin){cfecha2.setRawValue(p.fechafin)}
//Evento keyup de las fechas
cfecha1.on('blur',function(fecha){
    var vector1 = cfecha1.getRawValue().split("/");
    var vector2 = cfecha2.getRawValue().split("/");
    var myDate1 = new Date(vector1[2]+"/"+vector1[1]+"/"+vector1[0]);
    var myDate2 = new Date(vector2[2]+"/"+vector2[1]+"/"+vector2[0]);
    var dias = (myDate2-myDate1)/86400000;
    //if(vector1[1] == vector2[1] && vector1[2] == vector2[2])
    {if (dias && dias>0){p.validarfechas = dias;}
    else{p.validarfechas = 1;}}
    //else{p.validarfechas = 0}
    //alert(p.validarfechas);
});




cfecha2.on('blur',function(fecha){
    var vector1 = cfecha1.getRawValue().split("/");
    var vector2 = cfecha2.getRawValue().split("/");
    var myDate1 = new Date(vector1[2]+"/"+vector1[1]+"/"+vector1[0]);
    var myDate2 = new Date(vector2[2]+"/"+vector2[1]+"/"+vector2[0]);
    var dias = (myDate2-myDate1)/86400000;
    //if(vector1[1] == vector2[1] && vector1[2] == vector2[2])
    {if (dias && dias>0){p.validarfechas = dias;}
    else{p.validarfechas = 1;}}
    //else{p.validarfechas = 0}
    //alert(p.validarfechas);
});            
}, 

FechaInicioFinParametro : function (p){
            var cfecha1 = Ext.create('Ext.form.field.Date', {
                renderTo: Ext.get('divfechainicioparametro'),
                name:'FechaInicio',
                id:'dtpfechainicio',
                enableKeyEvents :true,
                blankText :'Campo Fecha Inicio es Obligatorio',
                editable :true,
                anchor: '100%'
            });
            var cfecha2 = Ext.create('Ext.form.field.Date', {
                renderTo: Ext.get('divfechafinparametro'),
                name:'FechaFin',
                id:'dtpfechafin',
                enableKeyEvents :true,
                blankText :'Campo Fecha Fin es Obligatorio',
                editable :true,
                anchor: '100%'
            });
            
            if(p.fechainicio){cfecha1.setRawValue(p.fechainicio)}            
            if(p.fechafin){cfecha2.setRawValue(p.fechafin)}
//Evento keyup de las fechas
cfecha1.on('blur',function(fecha){
    var vector1 = cfecha1.getRawValue().split("/");
    var vector2 = cfecha2.getRawValue().split("/");
    var myDate1 = new Date(vector1[2]+"/"+vector1[1]+"/"+vector1[0]);
    var myDate2 = new Date(vector2[2]+"/"+vector2[1]+"/"+vector2[0]);
    var dias = (myDate2-myDate1)/86400000;
    if(vector1[1] == vector2[1] && vector1[2] == vector2[2])
    {if (dias && dias>0){p.validarfechas = dias;}
    else{p.validarfechas = 0;}}
    else{p.validarfechas = 0}
    //alert(p.validarfechas);
});




cfecha2.on('blur',function(fecha){
    var vector1 = cfecha1.getRawValue().split("/");
    var vector2 = cfecha2.getRawValue().split("/");
    var myDate1 = new Date(vector1[2]+"/"+vector1[1]+"/"+vector1[0]);
    var myDate2 = new Date(vector2[2]+"/"+vector2[1]+"/"+vector2[0]);
    var dias = (myDate2-myDate1)/86400000;
    if(vector1[1] == vector2[1] && vector1[2] == vector2[2])
    {if (dias && dias>0){p.validarfechas = dias;}
    else{p.validarfechas = 0;}}
    else{p.validarfechas = 0}
    //alert(p.validarfechas);
});            
}, 


FechaNacimiento : function (p){
            var cfecha1 = Ext.create('Ext.form.field.Date', {
                renderTo: Ext.get('divFechaNacimiento'),
                name:'FechaNacimiento',
                id:'fechanac',
                enableKeyEvents :true,
                blankText :'Campo Fecha es Obligatorio',
                editable :true,
                anchor: '100%'
            });
            
            if(p.fechanacimiento){cfecha1.setRawValue(p.fechanacimiento)}

    },    
FechasContrato : function (p){
            var cfecha = Ext.create('Ext.form.field.Date', {
                renderTo: Ext.get('divfecha'),
                id:'dtpfecha',
                name:'fecha',
                enableKeyEvents :true,
                blankText :'Campo Fecha es Obligatorio',
                editable :true,
                anchor: '100%'
            });
            var cfechainicio = Ext.create('Ext.form.field.Date', {
                renderTo: Ext.get('divfechainicio'),
                id:'dtpfechainicio',
                name:'fechainicio',
                enableKeyEvents :true,
                blankText :'Campo Fecha es Obligatorio',
                editable :true,
                anchor: '100%'
            });
            var cfechafin = Ext.create('Ext.form.field.Date', {
                renderTo: Ext.get('divfechafin'),
                id:'dtpfechafin',
                name:'fechafin',
                enableKeyEvents :true,
                blankText :'Campo Fecha es Obligatorio',
                editable :true,
                anchor: '100%'
            });
            if(p.fecha){cfecha.setRawValue(p.fecha)}  
            if(p.fechainicio){cfechainicio.setRawValue(p.fechainicio)}  
            if(p.fechafin){cfechafin.setRawValue(p.fechafin)}  
    },
FechaAlta : function (p){
        var cfecha = Ext.create('Ext.form.field.Date', {
            renderTo: Ext.get('divFechaalta'),
            id:'dtpfechaalta',
            name:'Fechaalta',
            enableKeyEvents :true,
            blankText :'Campo Fecha es Obligatorio',
            editable :true,
            anchor: '100%'
        });
        if(p.fechaalta){cfecha.setRawValue(p.fechaalta)}  

},
FechaAfiliacion : function (p){
            var cfecha = Ext.create('Ext.form.field.Date', {
                renderTo: Ext.get('divFechaAfiliacion'),
                id:'dtpfecha',
                name:'FechaAfiliacion',
                enableKeyEvents :true,
                blankText :'Campo Fecha es Obligatorio',
                editable :true,
                anchor: '100%'
            });
            if(p.fecha){cfecha.setRawValue(p.fecha)}  
 
    }, 
FechaNacConv: function (p){
            var cfechanac = Ext.create('Ext.form.field.Date', {
                renderTo: Ext.get('divFechaNacimiento'),
                id:'dtpfechanac',
                name:'FechaNacimiento',
                enableKeyEvents :true,
                blankText :'Campo Fecha Nacimiento es Obligatorio',
                editable :true,
                anchor: '100%'
            });
            if(p.fechanac){cfechanac.setRawValue(p.fechanac)}   
            
            var cfechaconv = Ext.create('Ext.form.field.Date', {
                renderTo: Ext.get('divFechaConvivencia'),
                id:'dtpfechaconv',
                name:'FechaConvivencia',
                enableKeyEvents :true,
                blankText :'Campo Fecha Convivencia es Obligatorio',
                editable :true,
                anchor: '100%'
            });
            if(p.fechaconv){cfechaconv.setRawValue(p.fechaconv)}              
},    
FechaAusencia : function (p){
            var cfechainicio = Ext.create('Ext.form.field.Date', {
                renderTo: Ext.get('divFechaInicio'),
                id:'dtpfechainicio',
                name:'FechaInicio',
                enableKeyEvents :true,
                blankText :'Campo Fecha Inicio es Obligatorio',
                editable :true,
                anchor: '100%'
            });
            if(p.fechainicio){cfechainicio.setRawValue(p.fechainicio)} 
            
            var cfechafin = Ext.create('Ext.form.field.Date', {
                renderTo: Ext.get('divFechaFin'),
                id:'dtpfechafin',
                name:'FechaFin',
                enableKeyEvents :true,
                blankText :'Campo Fecha Fin es Obligatorio',
                editable :true,
                anchor: '100%'
            });
            if(p.fechafin){cfechafin.setRawValue(p.fechafin)} 

//Evento keyup de las fechas
cfechafin.on('blur',function(fecha){
    var vector1 = cfechainicio.getRawValue().split("/");
    var vector2 = fecha.getRawValue().split("/");
    var myDate1 = new Date(vector1[2]+"/"+vector1[1]+"/"+vector1[0]);
    var myDate2 = new Date(vector2[2]+"/"+vector2[1]+"/"+vector2[0]);
    var dias = (myDate2-myDate1)/86400000;
    if (dias && dias>0){
        dias = dias+1;
        p.formulario.down('#Tiempo').setValue(dias);
    }
    else{
        p.formulario.down('#Tiempo').setValue("");
    }
    
});

cfechainicio.on('blur',function(fecha){
    var vector1 = fecha.getRawValue().split("/");
    var vector2 = cfechafin.getRawValue().split("/");
    var myDate1 = new Date(vector1[2]+"/"+vector1[1]+"/"+vector1[0]);
    var myDate2 = new Date(vector2[2]+"/"+vector2[1]+"/"+vector2[0]);
    var dias = (myDate2-myDate1)/86400000;
    if (dias && dias>0){
        p.formulario.down('#Tiempo').setValue(dias);
    }
    else{
        p.formulario.down('#Tiempo').setValue("");
    }

});

    },
PrestAdelDscto : function (p){


            Ext.create('Ext.form.field.Number', {
                renderTo: Ext.get('divmonto'),
                id:'nmonto',
                name:'monto',
                enableKeyEvents :true,
                value: p.monto ||"0",
                minValue: 0,
                blankText :'Campo Monto es Obligatorio',
                editable :true,
                anchor: '100%'
            });

            Ext.create('Ext.form.field.Number', {
                renderTo: Ext.get('divcuotas'),
                id:'ncuotas',
                name:'cuotas',
                enableKeyEvents :true,
                value: p.cuotas || "1",
                minValue: 1,
                maxValue: p.maxcuotas,
                blankText :'Campo Monto es Obligatorio',
                editable :true,
                anchor: '100%'
            });

            /*
            var cfechainicio = Ext.create('Ext.form.field.Date', {
                renderTo: Ext.get('divFechasolicitud'),
                id:'dtpFechasolicitud',
                name:'Fechasolicitud',
                enableKeyEvents :true,
                blankText :'Campo Fecha es Obligatorio',
                editable :true,
                anchor: '100%'
            });
            if(p.Fechasolicitud){cfechainicio.setRawValue(p.Fechasolicitud)} */
},

lrqInferior : function (p){

           Ext.create('Ext.form.field.Number', {
                renderTo: Ext.get('divinferior'),
                id:'lrqInferior',
                name:'inferior',
                enableKeyEvents :true,
                value: p.inferior ||"0",
                minValue: 0,
                blankText :'Campo inferior es Obligatorio',
                editable :true,
                anchor: '100%'
            });

},

lrqSuperior: function(p){
           Ext.create('Ext.form.field.Number', {
                renderTo: Ext.get('divsuperior'),
                id:'lrqSuperior',
                name:'superior',
                enableKeyEvents :true,
                value: p.superior ||"0",
                minValue: 0,
                blankText :'Campo superior es Obligatorio',
                editable :true,
                anchor: '100%'
            });
},
lrqPorcentaje: function(p){
         Ext.create('Ext.form.field.Number', {
                renderTo: Ext.get('divporcentaje'),
                id:'lrqPorcentaje',
                name:'porcentaje',
                enableKeyEvents :true,
                value: p.porcentaje ||"0",
                minValue: 0,
                blankText :'Campo porcentaje es Obligatorio',
                editable :true,
                anchor: '100%'
            });
},

lrqCardinal: function(p){
         Ext.create('Ext.form.field.Number', {
                renderTo: Ext.get('divcardinal'),
                id:'lrqCardinal',
                name:'cardinal',
                enableKeyEvents :true,
                value: p.cardinal ||"0",
                minValue: 0,
                blankText :'Campo cardinal es Obligatorio',
                editable :true,
                anchor: '100%'
            });
},

CmbEstado: function(p){

    var StoreEstado = Ext.create('Ext.data.Store', {
            model: 'Estadolrtquinta',
            data:[{
                "IdEstado":"1",
                "NomEstado":"ACTIVO",
               "tipoEstado":"true",
            },

            {
                "IdEstado":"2",
                "NomEstado":"INACTIVO",
                "tipoEstado":"false",
            }]
        });

           Ext.create('Ext.form.ComboBox', {
            renderTo: Ext.get('divestados'),
            id:'CmbEstado',
            emptyText : 'ESTADO',
            width:150,
            store: StoreEstado,
            queryMode: 'local',
            displayField: 'NomEstado',
            valueField: 'tipoEstado',
            autoSelect : false,
            forceSelection:true,
            allowBlank : false,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +'<h3></span>{NomEstado}'+'</h3>' +'</a>';
                }
            }
        });

},

CmbEjercicios: function(){

            var s = {};
            s.url = 'ejercicio/Index/';
            s.fields = ['Id','Anio','EstadoP'];
            s.pageSize = 15;
            var storeem = Escritorio.Funciones.StoreSimple(s);

if(Ext.getCmp('CmbEjercicios')){Ext.getCmp('CmbEjercicios').destroy() }
         var CmbEjercicios = Ext.create('Ext.form.ComboBox', {
            store: storeem,
            enableKeyEvents:true,
            id:'CmbEjercicios',
            name: 'CmbEjercicios',
            displayField: 'Anio',
            forceSelection : true,
            queryMode: 'remote',
            pageSize : 15,
            valueField  : 'Id',
            emptyText : 'Seleccione Año',
            width: 200,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +
                        '<h3></span>{Anio}'+'</h3>'+
                    '</a>';
                }
            }
            });
            storeem.loadPage(1);

 CmbEjercicios.on('select',function(combo){
    if(combo.getValue()){
      //Ext.getCmp('CmbEjercicios').clearValue();
     //   Ext.getCmp('CmbEjercicios').setRawValue('Id');
       // alert('Ingreso al cambio de change'+Ext.getCmp('CmbEjercicios').setRawValue('Anio'));
        //alert('limitesrquinta/IndexLimiteQuinta/' + combo.getValue());
        jsonStore.setProxy({type: 'ajax',
                    url: 'limitesrquinta/IndexLimiteQuinta/' + combo.getValue(),
                    reader: {
                        type: 'json',
                        root: 'grid',
                        totalProperty: 'total'
                    }
                }); 
           // jsonStore.reload();
            jsonStore.load();
            //  return jsonStore; 
    }
    }); 

    return CmbEjercicios;

},



CmbEjercicios2: function(){

            var s = {};
            s.url = 'ejercicio/Index/';
            s.fields = ['Id','Anio','EstadoP'];
            s.pageSize = 15;
            var storeem = Escritorio.Funciones.StoreSimple(s);

if(Ext.getCmp('CmbEjercicios')){Ext.getCmp('CmbEjercicios').destroy() }
         var CmbEjercicios = Ext.create('Ext.form.ComboBox', {
            store: storeem,
            enableKeyEvents:true,
            id:'CmbEjercicios',
            name: 'CmbEjercicios',
            displayField: 'Anio',
            forceSelection : true,
            queryMode: 'remote',
            pageSize : 15,
            valueField  : 'Id',
            emptyText : 'Seleccione Año',
            width: 200,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +
                        '<h3></span>{Anio}'+'</h3>'+
                    '</a>';
                }
            }
            });
            storeem.loadPage(1);

 CmbEjercicios.on('select',function(combo){
    if(combo.getValue()){
        //Ext.getCmp('CmbEjercicios').clearValue();
        //   Ext.getCmp('CmbEjercicios').setRawValue('Id');
       // alert('Ingreso al cambio de change'+Ext.getCmp('CmbEjercicios').setRawValue('Anio'));
      //  alert(' CTS ' + combo.getValue());
      //var a = Escritorio.Funciones.cmbTipoTrabajadorP2();
      //alert(a);
     /*   jsonStore.setProxy({type: 'ajax',
                    url: 'cts/IndexFiltro/'+combo.getValue()+'/',
                    param:{
                        IdEjercicio: combo.getValue(),
                    },
                    reader: {
                        type: 'json',
                        root: 'grid',
                        totalProperty: 'total'
                    }
                }); 
           // jsonStore.reload();
            jsonStore.load();*/

            IdEjercio =combo.getValue();
            return Escritorio.Funciones.CARGADATA(IdEjercio,IdTipoTrabajadorr,fecha);

    }
    }); 


    return CmbEjercicios;

},

CmbEjercicios3: function(){

            var s = {};
            s.url = 'ejercicio/Index/';
            s.fields = ['Id','Anio','EstadoP'];
            s.pageSize = 15;
            var storeem = Escritorio.Funciones.StoreSimple(s);

if(Ext.getCmp('CmbEjercicios2')){
    Ext.getCmp('CmbEjercicios2').destroy();
}

         var CmbEjercicios2 = Ext.create('Ext.form.ComboBox', {
            store: storeem,
            enableKeyEvents:true,
            id:'CmbEjercicios2',
            name: 'CmbEjercicios2',
            displayField: 'Anio',
            forceSelection : true,
            queryMode: 'remote',
            pageSize : 15,
            valueField  : 'Id',
            emptyText : 'Seleccione Año',
            width: 200,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +
                        '<h3></span>{Anio}'+'</h3>'+
                    '</a>';
                }
            }
            });
            storeem.loadPage(1);

 CmbEjercicios2.on('select',function(combo){
    if(combo.getValue()){
            IdEjercio2 =combo.getValue();
            return Escritorio.Funciones.CARGADATA2(IdEjercio2,IdTipoTrabajadorr2);

    }
    }); 


    return CmbEjercicios2;

},

CmbEjercicios4:function(){

            var s = {};
            s.url = 'ejercicio/Index/';
            s.fields = ['Id','Anio','EstadoP'];
            s.pageSize = 15;
            var storeem = Escritorio.Funciones.StoreSimple(s);

if(Ext.getCmp('CmbEjercicios2')){
    Ext.getCmp('CmbEjercicios2').destroy();
}

        var fechaHoy = new Date();
        var year = fechaHoy.getFullYear().toString();

         var CmbEjercicios2 = Ext.create('Ext.form.ComboBox', {
            id:'CmbEjercicios2',
            name: 'CmbEjercicios2',
            width: 200,
            store: storeem,
            queryMode: 'remote',
            displayField: 'Anio',
            valueField  : 'Id',
            forceSelection : true,
            autoSelect: false,
           // forceSelection: true,
            allowBlank: false,
            emptyText : year,
            minChars: 1,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +
                        '<h3></span>{Anio}'+'</h3>'+
                    '</a>';
                }
            }
            });
            storeem.loadPage(1);

 CmbEjercicios2.on('select',function(combo){
    if(combo.getValue()){
            IdEjercicios3 =combo.getValue();
            return Escritorio.Funciones.CARGADATAREPORTE(IdEjercicios3,IdMesReporte);

    }
    }); 
    return CmbEjercicios2;

},

CmbEjercicios5:function(){

        var s = {};
        s.url = 'ejercicio/Index/';
        s.fields = ['Id','Anio','EstadoP'];
        s.pageSize = 15;
        var storeem = Escritorio.Funciones.StoreSimple(s);

        if(Ext.getCmp('CmbEjercicios3')){
            Ext.getCmp('CmbEjercicios3').destroy();
        }

        var fechaHoy = new Date();
        var year = fechaHoy.getFullYear().toString();
        if(IdEjercicioAFP!=null){

            year='201'+IdEjercicioAFP;
        }
         var CmbEjercicios3 = Ext.create('Ext.form.ComboBox', {
            id:'CmbEjercicios3',
            name: 'CmbEjercicios3',
            width: 200,
            store: storeem,
            queryMode: 'remote',
            displayField: 'Anio',
            valueField  : 'Id',
            //forceSelection : false,
           // autoSelect: false,
           // allowBlank: false,
            emptyText : year,
            minChars: 1,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +
                        '<h3></span>{Anio}'+'</h3>'+
                    '</a>';
                }
            }
            });
            storeem.loadPage(1);

         CmbEjercicios3.on('select',function(combo){
            if(combo.getValue()){
                    IdEjercicioAFP =combo.getValue();
                    //Escritorio.Funciones.CargarComboMeses(IdEjercicioAFP);
                    //alert('El IdEjercicio es: '+IdEjercicioAFP);
                     Escritorio.RRHH.CargarComboMese(IdEjercicioAFP);
                    // return Escritorio.Funciones.CARGADATAREPORTEAFP(IdEjercicios3,IdMesReporte);
        
            }
            }); 
    return CmbEjercicios3;
},
GetEjercicioAFPId: function(IdEjercicioAFP){
   // alert('Ingreso al GetEjercicioAFPId');
    return IdEjercicioAFP;
},
CargarComboMeses: function(IdEjercicio){
        var fechaHoy = new Date();
        var month = fechaHoy.getMonth();
        var mesesito
        if (month==1) {
            mesesito= "Enero";
        } 
        if (month==2) {
            mesesito= "Febrero";
        }
        if (month==3) {
            mesesito= "Marzo";
        }
        if (month==4) {
            mesesito= "Abril";
        }
        if (month==5) {
            mesesito= "Mayo";
        }
        if (month==6) {
            mesesito= "Junio";
        }
        if (month==7) {
            mesesito= "Julio";
        }
        if (month==8) {
            mesesito= "Agosto";
        }
        if (month==9) {
            mesesito= "Setiembre";
        }
        if (month==10) {
            mesesito= "Octubrecito";
        }
        if (month==11) {
            mesesito= "Noviembre";
        }
        if (month==12) {
            mesesito= "Diciembre";
        }

        var s = {};
        s.url = 'afp/IndexEjercicios/'+IdEjercicio;
        s.fields = ['idejerciciomes','Mes'];
        s.pageSize = 15;
        var storeem = Escritorio.Funciones.StoreSimple(s);

      if(Ext.getCmp('CmbEjercicios2')){
            Ext.getCmp('CmbEjercicios2').destroy();
        }
        var CmbEjercicios2 = Ext.create('Ext.form.ComboBox', {
            id:'CmbEjercicios2',
            name: 'CmbEjercicios2',
            width: 200,
            store: storeem,
            queryMode: 'remote',
            displayField: 'Mes',
            valueField  : 'idejerciciomes',
            forceSelection : true,
            autoSelect: false,
            allowBlank: false,
            emptyText : mesesito,
            minChars: 1,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +
                        '<h3></span>{Mes}'+'</h3>'+
                    '</a>';
                }
            }
            });
            storeem.loadPage(1);

    CmbEjercicios2.on('select',function(combo){
    if(combo.getValue()){
            IdEjercicios3 =combo.getValue();
           // alert('CargarComboMeses ID:'+IdEjercicios3);
           return Escritorio.Funciones.CARGADATAREPORTEAFPNET(IdEjercicios3,IdEjercicioAFP);

    }
    }); 

    return CmbEjercicios2;
},
CARGADATAREPORTEAFPNET: function(IdEjercicios3,IdEjercicioAFP){
    //IdEjercicios3 es el mes
    //IdEjercicioAFP es el año
     jsonStore.setProxy({
         type: 'ajax',
         url: 'afp/IndexFiltros2/',
         params:
         {
                IdTipo: IdEjercicios3,
                IdPersonal: IdEjercicioAFP,
         },
         extraParams:{
                IdTipo: IdEjercicios3,
                IdPersonal: IdEjercicioAFP,
         },
         reader: {
                   type: 'json',
                   root: 'grid',
                    totalProperty: 'total'
                    },
          simpleSortMode: true
          });
        jsonStore.reload();
        jsonStore.load();
        return jsonStore; 
   // return alert('Ingreso y los valores son:'+IdEjercicios3+' '+IdEjercicioAFP);

},
CARGADATAREPORTE: function(IdEjercicios3,IdMesReporte){

 jsonStore.setProxy({
         type: 'ajax',
         url: 'cts/IndexFiltros2/',
         params:
         {
                IdTipo: IdEjercicios3,
                IdPersonal: IdMesReporte,
         },
         extraParams:{
                IdTipo: IdEjercicios3,
                IdPersonal: IdMesReporte,
         },
         reader: {
                   type: 'json',
                   root: 'grid',
                    totalProperty: 'total'
                    },
          simpleSortMode: true
          });
        jsonStore.reload();
        jsonStore.load();
        return jsonStore; 
},

CARGADATAREPORTEAFP: function(){

     var el = document.createElement("iframe");
             el.setAttribute('id', 'ifrm');
             document.body.appendChild(el);
             el.setAttribute('src', 'afp/Reportdv/?IdEjercicioMes='+IdEjercicios3+'&IdTipoTrabajador='+IdEjercicioAFP);
},

CARGADATAREPORTE2: function(){
     var el = document.createElement("iframe");
             el.setAttribute('id', 'ifrm');
             document.body.appendChild(el);
             el.setAttribute('src', 'cts/Reportdv/?IdEjercicioMes='+IdEjercicios3+'&IdTipoTrabajador='+IdMesReporte);
},
CARGADATAREPORTEHABIENTE: function(id){
    var el = document.createElement("iframe");
             el.setAttribute('id', 'ifrm');
             document.body.appendChild(el);
             el.setAttribute('src', 'derechohabiente/ReportdvALL/?IdEjercicioMes='+id);
},
CARGADATA: function(IdEjercio,IdTipoTrabajador,fecha){

 jsonStore.setProxy({
         type: 'ajax',
         url: 'cts/IndexFiltros/',
         params:
         {
                IdPersonal: IdEjercio,
                IdTipo: IdTipoTrabajador,
                FechaInicio: fecha,
         },
         extraParams:{
                IdPersonal: IdEjercio,
                IdTipo: IdTipoTrabajador,
                 FechaInicio: fecha,
         },
         reader: {
                   type: 'json',
                   root: 'grid',
                    totalProperty: 'total'
                    },
          simpleSortMode: true
          });
        jsonStore.reload();
        jsonStore.load();
        return jsonStore; 
  
},

CARGAIDEJERCICIO2: function(){
        return IdEjercio2; 
},

CARGAIDEJERCICIO: function(){
        return IdEjercio; 
},

CARGADATA2: function(IdEjercio,IdTipoTrabajador){

 jsonStore.setProxy({
         type: 'ajax',
         url: 'prvvacacion/IndexFiltros/',
         params:
         {
                IdPersonal: IdEjercio,
                IdTipo: IdTipoTrabajador,
         },
         extraParams:{
                IdPersonal: IdEjercio,
                IdTipo: IdTipoTrabajador,
         },
         reader: {
                   type: 'json',
                   root: 'grid',
                    totalProperty: 'total'
                    },
          simpleSortMode: true
          });
        jsonStore.reload();
        jsonStore.load();
        return jsonStore; 
},

calcularprovisionCTS : function() {
                             //   alert('Ingreso a calcular');
                                var idejerciciomes
                            /*  if (Ext.getCmp('Comboejerciciomes').getValue() == null) {
                                    idejerciciomes = vec[2];
                                } else {
                                    idejerciciomes = Ext.getCmp('Comboejerciciomes').getValue();
                                }
                            */
                                var Frm = Ext.create('Ext.form.Panel', {
                                    id: 'FrmInvQR',
                                    frame: true,
                                    bodyPadding: '5',
                                    fieldDefaults: {
                                        msgTarget: 'side',
                                        labelAlign: 'left',
                                        labelWidth: 60,
                                        anchor: '100%'
                                    },
                                    items: [{
                                        xtype: 'datefield',
                                        name: 'Fecha',
                                        allowBlank: false,
                                        fieldLabel: 'Fecha'
                                    }
                                    ],
                                    buttons: [{
                                        text: 'Generar',
                                        handler: function () {

                                            Ext.MessageBox.show({
                                                msg: 'Generando Registros...',
                                                progressText: 'Actualizando...',
                                                width: 300,
                                                icon: 'ext-mb-download'
                                            });

                                            var form = this.up('form').getForm();
                                            if (form.isValid()) {
                                                form.submit({
                                                    //url: 'planilla/PagarPlanilla/' + idejerciciomes,
                                                    success: function (form, action) {
                                                        Ext.getCmp('WPPC').close();

                                                        setTimeout(function () {
                                                            Ext.MessageBox.hide();
                                                        }, 1000);
                                                    },
                                                    failure: function (form, action) {
                                                        Ext.Msg.show({
                                                            title: 'Atencion!!',
                                                            msg: action.result.msg,
                                                            buttons: Ext.Msg.OK,
                                                            icon: Ext.Msg.WARNING
                                                        });
                                                    }
                                                });
                                            }
                                        }
                                    }, {
                                        text: 'Limpiar',
                                        handler: function () {
                                            this.up('form').getForm().reset();
                                        }
                                    }
                                    ]
                                });

                                var win = Ext.create('widget.window', {
                                    id: 'WPPC',
                                    title: 'calcular provision CTS',
                                    closable: true,
                                    bodyPadding: '5',
                                    bodyBorder: false,
                                    width: 250,
                                    minWidth: 200,
                                    height: 150,
                                    layout: 'fit',
                                    modal: true,
                                    items: [Frm]
                                });

                                win.show();
                           return win;
},


fechaFiltro: function(){
          var  tbar2 = Ext.create('Ext.toolbar.Toolbar', {
                        items: [ {
                                id: 'FechaFiltro',
                                xtype: 'datefield',
                                format: 'd/m/Y',
                                submitFormat: 'Y-m-d H:i:s',
                                width: 155,
                                labelWidth: 55,
                                value: new Date(),
                                listeners: {
                                    'select': function () {
                                        if (this.getValue() > Ext.getCmp('FechaFiltro').getValue()) {
                                            //Ext.getCmp('FechaFiltro').setValue(Ext.Date.add(this.getValue(), Ext.Date.DAY, 1));
                                        }
                                       // alert( Ext.getCmp('FechaFiltro').setValue(Ext.Date.add(this.getValue(), Ext.Date.DAY, 1)));
                                     //  alert('HOLA'+Ext.getCmp('FechaFiltro').getValue());
                                      // alert(this.getValue());
                                      fecha = Ext.getCmp('FechaFiltro').getValue();
                                       Escritorio.Funciones.CARGADATA(IdEjercio,IdTipoTrabajadorr,fecha);
                                    }
                                }
                            }                            

                            ],
                    });
    return tbar2;
},

fechaFiltro2: function(){
          var  tbar3 = Ext.create('Ext.toolbar.Toolbar', {
                        items: [ {
                                id: 'FechaFiltro2',
                                xtype: 'datefield',
                                format: 'd/m/Y',
                                submitFormat: 'Y-m-d H:i:s',
                                width: 155,
                                labelWidth: 55,
                                value: new Date(),
                                listeners: {
                                    'select': function () {
                                        if (this.getValue() > Ext.getCmp('FechaFiltro2').getValue()) {
                                        }
                                      fecha = Ext.getCmp('FechaFiltro2').getValue();
                                       Escritorio.Funciones.CARGADATA(IdEjercio,IdTipoTrabajadorr,fecha);
                                    }
                                }
                            }                            

                            ],
                    });
    return tbar3;
},

cmbTipoTrabajadorP2: function(){
            var s = {};
            s.url = 'tipotrabajador/Indexconid/1';
            s.fields = ['IdTipoTrabajador','NomTipoTrabajador','CodSunatTipoTrab'];
            s.pageSize = 15;
            var storeem2 = Escritorio.Funciones.StoreSimple(s);
if(Ext.getCmp('cmbTipoTrabajador')){Ext.getCmp('cmbTipoTrabajador').destroy() }

                var cmbTipoTrabajador = Ext.create('Ext.form.ComboBox', {
                    
                    store: storeem2,
                    enableKeyEvents:true,
                    id: 'cmbTipoTrabajador',
                    name: 'cmbTipoTrabajador2',
                    displayField: 'NomTipoTrabajador',
                    width: 200,
                    queryMode: 'remote',
                    pageSize : 15,
                    valueField: 'IdTipoTrabajador',
                    emptyText : 'Seleccione Tipo Trabajo',
                    forceSelection: true,
                    listConfig: {
                        loadingText: 'Buscando...',
                        emptyText: 'Sin Resultados',
                        getInnerTpl: function () {
                            return '<a>' + '<h3></span>{NomTipoTrabajador}' + '</h3>' + '</a>';
                        }
                    }
                });
            storeem2.loadPage(1);

//cmbTipoTrabajador.on('select',function(combo){
 //   alert(cmbTipoTrabajador.getValue());
 cmbTipoTrabajador.on('select',function(combo){
    if(combo.getValue()){
             //   var comboVal = Escritorio.Funciones.CmbEjercicios2();
             //  alert(cmbTipoTrabajador.getValue());

            /*    StoreCTSP.setProxy({
                        type: 'ajax',
                        url: 'cts/IndexFiltro/'+'/'+cmbTipoTrabajador.getValue(),
                        reader: {
                            type: 'json',
                            root: 'grid',
                            totalProperty: 'total'
                        }
                    });
                    jsonStore.load(); 
            */      

                    IdTipoTrabajadorr = combo.getValue();
                    return Escritorio.Funciones.CARGADATA(IdEjercio,IdTipoTrabajadorr,fecha);
               }
                });

    return cmbTipoTrabajador;

},


cmbTipoTrabajadorP3: function(){
            var s = {};
            s.url = 'tipotrabajador/Indexconid/1';
            s.fields = ['IdTipoTrabajador','NomTipoTrabajador','CodSunatTipoTrab'];
            s.pageSize = 15;
            var storeem2 = Escritorio.Funciones.StoreSimple(s);

if(Ext.getCmp('cmbTipoTrabajador3')){

    Ext.getCmp('cmbTipoTrabajador3').destroy();

}

                var cmbTipoTrabajador3 = Ext.create('Ext.form.ComboBox', {
                    
                    store: storeem2,
                    enableKeyEvents:true,
                    id: 'cmbTipoTrabajador3',
                    name: 'cmbTipoTrabajador3',
                    displayField: 'NomTipoTrabajador',
                    width: 200,
                    queryMode: 'remote',
                    pageSize : 15,
                    valueField: 'IdTipoTrabajador',
                    emptyText : 'Seleccione Tipo Trabajo',
                    forceSelection: true,
                    listConfig: {
                        loadingText: 'Buscando...',
                        emptyText: 'Sin Resultados',
                        getInnerTpl: function () {
                            return '<a>' + '<h3></span>{NomTipoTrabajador}' + '</h3>' + '</a>';
                        }
                    }
                });
            storeem2.loadPage(1);
 cmbTipoTrabajador3.on('select',function(combo){
    if(combo.getValue()){
                    IdTipoTrabajadorr2 = combo.getValue();
                    return Escritorio.Funciones.CARGADATA2(IdEjercio2,IdTipoTrabajadorr2);
               }
                });

    return cmbTipoTrabajador3;

},


CmbEjercicio: function(p){

            var s = {};
            s.url = 'ejercicio/Index/';
            s.fields = ['Id','Anio','EstadoP'];
            s.pageSize = 15;
            var storeem = Escritorio.Funciones.StoreSimple(s);

            if(Ext.getCmp('CmbEjercicio')){Ext.getCmp('CmbEjercicio').destroy() }
            Ext.create('Ext.form.ComboBox', {
            store: storeem,
            enableKeyEvents:true,
            id:'CmbEjercicio',
            name: 'CmbEjercicio',
            displayField: 'Anio',
            forceSelection : true,
            queryMode: 'remote',
            pageSize : 15,
            valueField  : 'Id',
            emptyText : 'Seleccione Año',
            width: 150,
            renderTo: Ext.get('divhorario'),
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +
                        '<h3></span>{Anio}'+'</h3>'+
                    '</a>';
                }
            }
            });
            storeem.loadPage(1);

},
CmbDeduccion: function(p){

            var s = {};
            s.url = 'deduccion/IndexAll/';
            s.fields = ['iddeduccion','uit'];
            s.pageSize = 15;
            var storeem = Escritorio.Funciones.StoreSimple(s);

            if(Ext.getCmp('CmbDeduccion')){Ext.getCmp('CmbDeduccion').destroy() }
            Ext.create('Ext.form.ComboBox', {
            store: storeem,
            enableKeyEvents:true,
            id:'CmbDeduccion',
            name: 'CmbDeduccion',
            displayField: 'uit',
            forceSelection : true,
            queryMode: 'remote',
            pageSize : 15,
            valueField  : 'iddeduccion',
            emptyText : 'Seleccione Deduccion',
            width: 150,
            renderTo: Ext.get('divdeduccion'),
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +
                        '<h3></span>{uit}'+'</h3>'+
                    '</a>';
                }
            }
            });
            storeem.loadPage(1);

},

Saldo : function (p){
    Ext.create('Ext.form.field.Number', {
                renderTo: Ext.get('divmonto'),
                id:'nmonto',
                name:'monto',
                enableKeyEvents :true,
                value: p.monto ||"",
                minValue: 0,
                blankText :'Campo Monto Provisionado es Obligatorio',
                editable :true,
                anchor: '100%'
            });
},  

Sueldo : function (p){
    Ext.create('Ext.form.field.Number', {
                renderTo: Ext.get('divsueldo'),
                id:'nsueldo',
                name:'sueldo',
                enableKeyEvents :true,
                value: p.sueldo ||"",
                minValue: 0,
                blankText :'Campo Sueldo es Obligatorio',
                editable :true,
                anchor: '100%'
            });
}, 

MontoParametro : function (p){
    Ext.create('Ext.form.field.Number', {
                renderTo: Ext.get('divmonto'),
                id:'nValor',
                name:'Valor',
                enableKeyEvents :true,
                value: p.valor ||"",
                minValue: 0,
                blankText :'Campo Valor es Obligatorio',
                editable :true,
                anchor: '100%'
            });
}, 
MontoLimiteParametro : function (p){
    Ext.create('Ext.form.field.Number', {
                renderTo: Ext.get('divmontolimite'),
                id:'nMontoLimite',
                name:'MontoLimite',
                enableKeyEvents :true,
                value: p.montolimite ||"",
                minValue: 0,
                editable :true,
                anchor: '100%'
            });
}, 
Certificadorentaquinta : function(p){
        var cfechainicio = Ext.create('Ext.form.field.Date', {
            renderTo: Ext.get('divfechainicio'),
            id:'dtpfechainicio',
            name:'fechainicio',
            enableKeyEvents :true,
            blankText :'Campo Obligatorio',
            editable :true,
            anchor: '100%'
        });
        if(p.fechainicio){cfechainicio.setRawValue(p.fechainicio)} 
        
        var cfechafin = Ext.create('Ext.form.field.Date', {
            renderTo: Ext.get('divfechafin'),
            id:'dtpfechafin',
            name:'fechafin',
            enableKeyEvents :true,
            blankText :'Campo Obligatorio',
            editable :true,
            anchor: '100%'
        });
        if(p.fechafin){cfechafin.setRawValue(p.fechafin)} 

    Ext.create('Ext.form.field.Number', {
                renderTo: Ext.get('divingresos'),
                id:'ningresos',
                name:'ingresos',
                enableKeyEvents :true,
                value: p.ingresos ||"",
                minValue: 0,
                blankText :'Campo Ingresos Obligatorio',
                editable :true,
                anchor: '100%'
            });
            
    Ext.create('Ext.form.field.Number', {
                renderTo: Ext.get('divrqpagadas'),
                id:'nrqpagadas',
                name:'rqpagadas',
                enableKeyEvents :true,
                value: p.rqpagadas ||"",
                minValue: 0,
                blankText :'Campo Retenciones Obligatorio',
                editable :true,
                anchor: '100%'
            });

        },
//        Certificadorentaquinta1: function (p) {
//            var cfechainicio1 = Ext.create('Ext.form.field.Date', {
//                renderTo: Ext.get('divfechainicio1'),
//                id: 'dtpfechainicio1',
//                name: 'fechainicio',
//                enableKeyEvents: true,
//                blankText: 'Campo Obligatorio',
//                editable: true,
//                anchor: '100%'
//            });
//            if (p.fechainicio) { cfechainicio1.setRawValue(p.fechainicio) }

//            var cfechafin1 = Ext.create('Ext.form.field.Date', {
//                renderTo: Ext.get('divfechafin1'),
//                id: 'dtpfechafin1',
//                name: 'fechafin',
//                enableKeyEvents: true,
//                blankText: 'Campo Obligatorio',
//                editable: true,
//                anchor: '100%'
//            });
//            if (p.fechafin) { cfechafin1.setRawValue(p.fechafin) }

//            Ext.create('Ext.form.field.Number', {
//                renderTo: Ext.get('divingresos1'),
//                id: 'ningresos1',
//                name: 'ingresos',
//                enableKeyEvents: true,
//                value: p.ingresos || "",
//                minValue: 0,
//                blankText: 'Campo Ingresos Obligatorio',
//                editable: true,
//                anchor: '100%'
//            });

//            Ext.create('Ext.form.field.Number', {
//                renderTo: Ext.get('divrqpagadas1'),
//                id: 'nrqpagadas1',
//                name: 'rqpagadas',
//                enableKeyEvents: true,
//                value: p.rqpagadas || "",
//                minValue: 0,
//                blankText: 'Campo Retenciones Obligatorio',
//                editable: true,
//                anchor: '100%'
//            });

//        },
//ComboPosId:function(p){
//            var pr = {};
//            //Store Combo Categoria RRHH
//            pr.url = 'posicion/indexconid/'+p.IdArea;
//            pr.fields =   ['Id','Cargo'];
//            pr.pageSize = 15;
//            pr.store  =   Escritorio.Funciones.StoreSimple(pr);
//            
//            p.comboposid = Ext.create('Ext.form.ComboBox', {
//            store: pr.store,
//            enableKeyEvents:true,
//            id:'Comboposid',
//            displayField: 'Cargo',
//            forceSelection : true,
//            queryMode: 'remote',
//            triggerAction: 'all',
//            valueField  : 'Id',
//            emptyText : p.rawposid||'Seleccione Jefe Inmediato',
//            width:250,
//            listConfig: {
//                loadingText: 'Buscando...',
//                emptyText: 'Sin Resultados',
//                getInnerTpl: function() {
//                    return '<a>' +
//                        '<h3></span>{Cargo}'+'</h3>' +
//                    '</a>';
//                }
//            },
//            pageSize: 15,
//            renderTo: Ext.get('divJefeInmediato')
//            });     
//},
ComboCargo:function(p){
            var pr = {};
            //Store Combo Categoria RRHH
            pr.url = 'cargo/index';
            pr.fields =   ['Id','Cargo'];
            pr.pageSize = 15;
            pr.store  =   Escritorio.Funciones.StoreSimple(pr);
            
            p.combocargo = Ext.create('Ext.form.ComboBox', {
            store: pr.store,
            enableKeyEvents:true,
            id:'Combocargo',
            displayField: 'Cargo',
            forceSelection : true,
            queryMode: 'remote',
            triggerAction: 'all',
            valueField  : 'Id',
            emptyText : p.rawcargo||'Seleccione Cargo',
            width:250,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +
                        '<h3></span>{Cargo}'+'</h3>' +
                    '</a>';
                }
            },
            pageSize: 15,
            renderTo: Ext.get('divIdCargo')
            });     
},
ComboGuardian:function(p){
            
            var pr = {};
            pr.url = 'personal/Guardianes';
            pr.fields =   ['Id','Personal','Dni'];
            pr.pageSize = 15;
            pr.store  =   Escritorio.Funciones.StoreSimple(pr);
            
            p.combocargo = Ext.create('Ext.form.ComboBox', {
            store: pr.store,
            enableKeyEvents:true,
            id:'ComboGuardian',
            displayField: 'Personal',
            forceSelection : true,
            queryMode: 'remote',
            triggerAction: 'all',
            valueField  : 'Id',
            emptyText : p.rawpersonal||'Seleccione Personal',
            width:250,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +
                    '<h3></span>{Personal}'+'</h3>' +
                    '<h4 class="ccpp">DNI: {Dni}</h4>' +
                '</a>';
                }
            },
            pageSize: 15,
            renderTo: Ext.get('divIdPersonal')
            });     
},
ComboCatRRHH : function (p){
            
            var crh = {};
            var tt = {};
            var tc={};
            //Store Combo Categoria RRHH
            crh.url = 'categoriarrhh/index';
            crh.fields =   ['Id','Categoria'];
            crh.pageSize = 15;
            crh.store  =   Escritorio.Funciones.StoreSimple(crh);
            
            p.combocatrrhh = Ext.create('Ext.form.ComboBox', {
            store: crh.store,
            enableKeyEvents:true,
            id:'Combocatrrhhx',
            displayField: 'Categoria',
            forceSelection : true,
            queryMode: 'remote',
            triggerAction: 'all',
            valueField  : 'Id',
            emptyText : p.rawidcategoriarrhh||'Categoria Trabajador',
            width:250,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +
                        '<h3></span>{Categoria}'+'</h3>' +
                    '</a>';
                }
            },
            pageSize: 15,
            renderTo: Ext.get('divcategoriarrhh')
            });
            
            //Store Combo Tipo Trabajador
            tt.url = 'tipotrabajador/indexconid/'+(p.idcategoriarrhh ? p.idcategoriarrhh : 0);
            tt.fields =   ['Id','Tipo'];
            tt.pageSize = 15;
            tt.store  =   Escritorio.Funciones.StoreSimple(tt);
            
            p.combotipot = Ext.create('Ext.form.ComboBox', {
            store: tt.store,
            disabled: p.idcategoriarrhh ? false : true,//true,
            enableKeyEvents:true,
            id:'Combotipotx',
            displayField: 'Tipo',
            forceSelection : true,
            queryMode: 'remote',
            triggerAction: 'all',
            valueField  : 'Id',
            emptyText : p.rawtipotrabajador||'Tipo Trabajador',
            width:250,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +
                        '<h3></span>{Tipo}'+'</h3>' +
                    '</a>';
                }
            },
            pageSize: 15,
            renderTo: Ext.get('divtipotrabajador')
            });
            
            //Store Combo Tipo Contrato
            tc.url = 'tipocontrato/indexconid/'+(p.idcategoriarrhh ? p.idcategoriarrhh : 0);
            tc.fields =   ['Id','Tipo'];
            tc.pageSize = 15;
            tc.store  =   Escritorio.Funciones.StoreSimple(tc);
            
            p.combotipoc = Ext.create('Ext.form.ComboBox', {
            store: tc.store,
            disabled:p.idcategoriarrhh ? false:true,
            enableKeyEvents:true,
            id:'Combotipocx',
            displayField: 'Tipo',
            forceSelection : true,
            queryMode: 'remote',
            triggerAction: 'all',
            valueField  : 'Id',
            emptyText : p.rawtipocontrato || 'Tipo Contrato',
            width:250,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +
                        '<h3></span>{Tipo}'+'</h3>' +
                    '</a>';
                }
            },
            pageSize: 15,
            renderTo: Ext.get('divtipocontrato')
            });            
            
            
    p.combocatrrhh.on('select',function(combo){
            if(combo.getValue()){
                
            p.formulario.down('#IdTipoTrabajador').setValue("");
            p.formulario.down('#IdTipoContrato').setValue("");
            
            p.idcategoriarrhh = combo.getValue();
            p.rawidcategoriarrhh = combo.getRawValue();
            
            p.combotipot.clearValue();p.combotipot.enable(true);p.combotipot.setRawValue("Tipo Trabajador");
            p.rawtipotrabajador = "Tipo Trabajador";
            tt.store.setProxy({type: 'ajax',
                        url: 'tipotrabajador/indexconid/' + combo.getValue(),
                        reader: {
                            type: 'json',
                            root: 'grid',
                            totalProperty: 'total'//<-- Total de registros a paginar
                        }
                    });
                    
            p.combotipoc.clearValue();p.combotipoc.enable(true);p.combotipoc.setRawValue("Tipo Contrato");
            p.rawtipocontrato="Tipo Contrato";
            tc.store.setProxy({type: 'ajax',
                        url: 'tipocontrato/indexconid/' + combo.getValue(),
                        reader: {
                            type: 'json',
                            root: 'grid',
                            totalProperty: 'total'//<-- Total de registros a paginar
                        }
                    });
    }                    
        });  
p.combotipot.on('expand',function(combo){tt.store.loadPage(1);});    
p.combotipoc.on('expand',function(combo){tc.store.loadPage(1);});                         
    },
ComnoMotivoausencia: function(p){
            var pr = {};
            //Store Combo Categoria RRHH
            pr.url = 'motivoausencia/index';
            pr.fields =   ['Id','Motivo','Archivo'];
            pr.pageSize = 15;
            pr.store  =   Escritorio.Funciones.StoreSimple(pr);
            
            p.combomotivoaus = Ext.create('Ext.form.ComboBox', {
            store: pr.store,
            enableKeyEvents:true,
            id:'Combomotivoausx',
            displayField: 'Motivo',
            forceSelection : true,
            queryMode: 'remote',
            triggerAction: 'all',
            valueField  : 'Id',
            emptyText : p.rawmotivoaus||'Seleccione Motivo Ausencia',
            width:250,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +
                        '<h3></span>{Motivo}'+'</h3>' +
                        '<h4 class="nombrecorto">Archivo: {Archivo}</h4>' +
                    '</a>';
                }
            },
            pageSize: 15,
            renderTo: Ext.get('divIdMotivoAusencia')
            });      
},    
ComboProyecto: function(p){
            var pr = {};
            //Store Combo Categoria RRHH
            pr.url = 'proyecto/index';
            pr.fields =   ['Id','Codigo','Proyecto'];
            pr.pageSize = 15;
            pr.store  =   Escritorio.Funciones.StoreSimple(pr);
            p.comboproyecto = Ext.create('Ext.form.ComboBox', {
            store: pr.store,
            enableKeyEvents:true,
            minChars : 2,
            id:'Comboproyectox',
            displayField: 'Proyecto',
            forceSelection : true,
            queryMode: 'remote',
            triggerAction: 'all',
            valueField  : 'Id',
            emptyText : p.rawproyecto||'Seleccione Proyecto',
            width:250,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +
                        '<h3></span>{Proyecto}'+'</h3>' +
                        '<h4 class="nombrecorto">Codigo: {Codigo}</h4>' +
                    '</a>';
                }
            },
            pageSize: 15,
            renderTo: Ext.get('divIdProyecto')
            });      
},


ComboPlanContable: function(p){
            var pr = {};
            //Store Combo Categoria RRHH
            pr.url = 'plancontable/index';
            pr.fields =   ['Id','Codigo','Nombre'];
            pr.pageSize = 15;
            pr.store  =   Escritorio.Funciones.StoreSimple(pr);
            p.comboproyecto = Ext.create('Ext.form.ComboBox', {
            store: pr.store,
            enableKeyEvents:true,
            minChars : 2,
            id:'Comboplancontablex',
            displayField: 'Nombre',
            forceSelection : true,
            queryMode: 'remote',
            triggerAction: 'all',
            valueField  : 'Id',
            emptyText : p.rawplancontable||'Seleccione Plan Contable',
            width:250,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +
                        '<h3></span>{Nombre}'+'</h3>' +
                        '<h4 class="nombrecorto">Codigo: {Codigo}</h4>' +
                    '</a>';
                }
            },
            pageSize: 15,
            renderTo: Ext.get('divIdPlan')
            });      
},
ComboCCostoProyecto: function(p){
            var cc = {};
            //Store Combo Categoria RRHH
            cc.url = 'ccosto/index/'+(p.idproyecto ? p.idproyecto : 0);
            cc.fields =   ['Id','Ccosto','Codigo'];
            cc.pageSize = 15;
            cc.store  =   Escritorio.Funciones.StoreSimple(cc);
            
            p.comboccosto = Ext.create('Ext.form.ComboBox', {
            store: cc.store,
            enableKeyEvents:true,
            disabled:p.idproyecto ? false:true,
            id:'Comboccostox',
            displayField: 'Ccosto',
            forceSelection : true,
            minChars : 2,
            queryMode: 'remote',
            triggerAction: 'all',
            valueField  : 'Id',
            emptyText : p.rawccosto||'Seleccione Centro Costo',
            width:250,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +
                        '<h3></span>{Ccosto}'+'</h3>' +
                        '<h4 class="nombrecorto">Codigo: {Codigo}</h4>' +
                    '</a>';
                }
            },
            pageSize: 15,
            renderTo: Ext.get('divIdCCosto')
            });
            
    p.comboproyecto.on('select',function(combo){
            if(combo.getValue()){
                
            p.formulario.down('#IdCCosto').setValue("");
            
            p.idproyecto = combo.getValue();
            p.rawproyecto = combo.getRawValue();
            
            p.comboccosto.clearValue();
            p.comboccosto.enable(true);
            p.comboccosto.setRawValue("Seleccione Centro Costo");
            p.rawccosto = "Seleccione Centro Costo";
            
            cc.store.setProxy({type: 'ajax',
                        url: 'ccosto/index/' + combo.getValue(),
                        reader: {
                            type: 'json',
                            root: 'grid',
                            totalProperty: 'total'//<-- Total de registros a paginar
                        }
                    });
                    
            }                    
        }); 
p.comboccosto.on('expand',function(combo){cc.store.loadPage(1);});         
},
CalculoPorcentaje: function(p){

Ext.create('Ext.form.field.Number', {
    renderTo: Ext.get('divporcentaje'),
    id:'nporcentaje',
    name:'porcentaje',
    enableKeyEvents :true,
    value: p.porcentaje ||"",
    minValue: 0,
    maxValue : 100,
    blankText :'Campo Porcentaje Obligatorio',
    editable :true,
    anchor: '100%'
});

Ext.create('Ext.form.field.Number', {
    renderTo: Ext.get('divvalor'),
    id:'nvalor',
    name:'valor',
    enableKeyEvents :true,
    value: p.valor ||"",
    minValue: 0,
    blankText :'Campo Valor Obligatorio',
    editable :true,
    anchor: '100%'
});

Ext.getCmp('nporcentaje').on('keyup',function(valor){
    var valorx = p.sueldo*valor.getValue()/100;
    Ext.getCmp('nvalor').setValue(valorx);
});

Ext.getCmp('nvalor').on('keyup',function(valor){
    var valorx = (valor.getValue()/p.sueldo)*100;
    Ext.getCmp('nporcentaje').setValue(valorx);
});

},
ComboGrupoOcupacional : function (p){
            
            var crh = {};
            //Store Combo Categoria RRHH
            crh.url = 'grupoocupacional/index';
            crh.fields =   ['Id','Grupo'];
            crh.pageSize = 15;
            crh.store  =   Escritorio.Funciones.StoreSimple(crh);
            
            p.combogrupoo = Ext.create('Ext.form.ComboBox', {
            store: crh.store,
            enableKeyEvents:true,
            id:'Combogrupoox',
            displayField: 'Grupo',
            forceSelection : true,
            queryMode: 'remote',
            triggerAction: 'all',
            valueField  : 'Id',
            emptyText : p.rawgrupoocupacional||'Categoria Trabajador',
            width:250,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +
                        '<h3></span>{Grupo}'+'</h3>' +
                    '</a>';
                }
            },
            pageSize: 15,
            renderTo: Ext.get('divgrupoocupacional')
            });
},
ComboNivelEducativo : function (p){
            var crh = {};
            /*var tt = {};
            var tc={};*/
            //Store Combo Categoria RRHH
            crh.url = 'niveleducativo/index';
            crh.fields =   ['Id','Nivel'];
            crh.pageSize = 15;
            crh.store  =   Escritorio.Funciones.StoreSimple(crh);
            
            p.combonivele = Ext.create('Ext.form.ComboBox', {
            store: crh.store,
            enableKeyEvents:true,
            id:'Combonivelex',
            displayField: 'Nivel',
            forceSelection : true,
            queryMode: 'remote',
            triggerAction: 'all',
            valueField  : 'Id',
            emptyText :p.rawniveleducativo || 'Nivel Educativo',
            width:250,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +
                        '<h3></span>{Nivel}'+'</h3>' +
                    '</a>';
                }
            },
            pageSize: 15,
            renderTo: Ext.get('divniveleducativo')
            });
},
//ComboAreaPosicion : function (p){
//            
//            var a = {};
//            var pos = {};
//            //Store Combo Categoria RRHH
//            a.url = 'area/index';
//            a.fields =   ['Id','Area'];
//            a.pageSize = 15;
//            a.store  =   Escritorio.Funciones.StoreSimple(a);
//            
//            p.comboarea = Ext.create('Ext.form.ComboBox', {
//            store: a.store,
//            enableKeyEvents:true,
//            id:'Comboareax',
//            displayField: 'Area',
//            forceSelection : true,
//            queryMode: 'remote',
//            triggerAction: 'all',
//            valueField  : 'Id',
//            emptyText : p.rawarea||'Seleccione Area',
//            width:250,
//            listConfig: {
//                loadingText: 'Buscando...',
//                emptyText: 'Sin Resultados',
//                getInnerTpl: function() {
//                    return '<a>' +
//                        '<h3></span>{Area}'+'</h3>' +
//                    '</a>';
//                }
//            },
//            pageSize: 15,
//            renderTo: Ext.get('divarea')
//            });
//            
//            //Store Combo Tipo Trabajador
//            pos.url = 'posicion/indexconid/'+(p.idarea? p.idarea:0);
//            pos.fields =   ['Id','Cargo'];
//            pos.pageSize = 15;
//            pos.store  =   Escritorio.Funciones.StoreSimple(pos);
//            
//            p.comboposicion = Ext.create('Ext.form.ComboBox', {
//            store: pos.store,
//            disabled:p.idarea?false:true,
//            enableKeyEvents:true,
//            id:'Comboposicionx',
//            displayField: 'Cargo',
//            forceSelection : true,
//            queryMode: 'remote',
//            triggerAction: 'all',
//            valueField  : 'Id',
//            emptyText : p.rawposicion || 'Seleccione Cargo',
//            width:250,
//            listConfig: {
//                loadingText: 'Buscando...',
//                emptyText: 'Sin Resultados',
//                getInnerTpl: function() {
//                    return '<a>' +
//                        '<h3></span>{Cargo}'+'</h3>' +
//                    '</a>';
//                }
//            },
//            pageSize: 15,
//            renderTo: Ext.get('divposicion')
//            });  
//            
//    p.comboarea.on('select',function(combo){
//        if(combo.getValue()){
//            //p.formulario.down('#IdPosicion').setValue("");
//            p.valueposicion = '';
//            
//            p.idarea = combo.getValue();
//            p.rawarea = combo.getRawValue();
//            
//            p.comboposicion.clearValue();p.comboposicion.enable(true);p.comboposicion.setRawValue("Seleccione Cargo");
//            p.rawposicion = "Seleccione Cargo";
//            
//            pos.store.setProxy({type: 'ajax',
//                        url: 'posicion/indexconid/' + combo.getValue(),
//                        reader: {
//                            type: 'json',
//                            root: 'grid',
//                            totalProperty: 'total'//<-- Total de registros a paginar
//                        }
//                    }); 
//        }
//        });  
//p.comboposicion.on('expand',function(combo){pos.store.loadPage(1);});                           
//    },
ComboHorario : function (p){
            var hor = {};
            /*var tt = {};
            var tc={};*/
            //Store Combo Categoria RRHH
            hor.url = 'horario/index';
            hor.fields =   ['Id','Ciclo','Descripcion'];
            hor.pageSize = 15;
            hor.store  =   Escritorio.Funciones.StoreSimple(hor);
            
            p.combohorario = Ext.create('Ext.form.ComboBox', {
            store: hor.store,
            enableKeyEvents:true,
            id:'Combohorariox',
            displayField: 'Ciclo',
            forceSelection : true,
            queryMode: 'remote',
            triggerAction: 'all',
            valueField  : 'Id',
            emptyText : p.rawhorario||'Seleccione Horario',
            width:250,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +
                        '<h3></span>{Ciclo}'+'</h3>' +
                        '{Descripcion}'+
                    '</a>';
                }
            },
            pageSize: 15,
            renderTo: Ext.get('divhorario')
            });
},    
SistemaPension : function (p){
            
            var crh = {};
            crh.url = 'sistemapension/index';
            crh.fields = ['IdSistemaPensiones', 'Nombre', 'Descripcion'];
            crh.pageSize = 15;
            crh.store  =   Escritorio.Funciones.StoreSimple(crh);
            
            p.sistemapension = Ext.create('Ext.form.ComboBox', {
            store: crh.store,
            enableKeyEvents:true,
            id:'Combosistemapensionxx',
            displayField: 'Descripcion',
            forceSelection : true,
            queryMode: 'remote',
            triggerAction: 'all',
            valueField: 'IdSistemaPensiones',
            emptyText : p.rawsistemapension||'Sistema Pensiones',
            width:250,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +
                        '<h3></span>{Descripcion}'+'</h3>' +
                        '<h4 class="nombrecorto">{Nombre}</h4>' +
                    '</a>';
                }
            },
            pageSize: 15,
            renderTo: Ext.get('divIdSistemaPensiones')
            });
},
/*ComprobarEjercicio : function (){
    var vector = null;
    Ext.Ajax.request({
        url: 'ejercicio/Comprobarejercicio',
        success: function (httpReq) {
            var textRes = httpReq.responseText;
            vector = textRes;
            return vector;
        },
        failure: function () {
            alert('Error, Ha ocurrido un error al procesar los datos');
        }
    }); 
    //alert(vector);
    return vector;
},*/
ComboReuneracion  :   function(){

        var StoreSexo = Ext.create('Ext.data.Store', {
            model: 'Sexo',
            data:[{
                "IdSexo":"1",
                "Sexo":"2",
                "NomSexo":"NOVIEMBRE-ABRIL"
            },

            {
                "IdSexo":"2",
                "Sexo":"1",
                "NomSexo":"MAYO-OCTUBRE"
            }]
        });
        var fechaHoy = new Date();
        var month = fechaHoy.getMonth();
        var mesesito
        if (month==5||month==6||month==7||month==8||month==9||month==10) {
            mesesito= "MAYO-OCTUBRE";
        }else{
            mesesito = "NOVIEMBRE-ABRIL";
        }
         var ComboSexo = Ext.create('Ext.form.ComboBox', {
            store: StoreSexo,
            enableKeyEvents:true,
            id:'ComboSexo',
            name: 'ComboSexo',
            displayField: 'NomSexo',
            queryMode: 'local',
            pageSize : 15,
            valueField  : 'Sexo',
            emptyText : mesesito,
            width:330,
            autoSelect : false,
            forceSelection:true,
            editable: false,
            allowBlank : false,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +
                        '<h3></span>{NomSexo}'+'</h3>'+
                    '</a>';
                }
            }
            });
 ComboSexo.on('select',function(combo){
    if(combo.getValue()){
            IdMesReporte =combo.getValue();
              if (IdMesReporte==1) {
                    month = "1";
                    Escritorio.Funciones.cambiarNombresMeses2(month);
                }
                if(IdMesReporte==2){
                    month = "2";
                    Escritorio.Funciones.cambiarNombresMeses2(month);
                }
                   return Escritorio.Funciones.CARGADATAREPORTE(IdEjercicios3,IdMesReporte);
    }
    }); 
    return ComboSexo;

    },

ComboMeses  :   function(){

        var fechaHoy = new Date();
        var month = fechaHoy.getMonth();
        var mesesito
        if (month==1) {
            mesesito= "Enero";
        } 
        if (month==2) {
            mesesito= "Febrero";
        }
        if (month==3) {
            mesesito= "Marzo";
        }
        if (month==4) {
            mesesito= "Abril";
        }
        if (month==5) {
            mesesito= "Mayo";
        }
        if (month==6) {
            mesesito= "Junio";
        }
        if (month==7) {
            mesesito= "Julio";
        }
        if (month==8) {
            mesesito= "Agosto";
        }
        if (month==9) {
            mesesito= "Setiembre";
        }
        if (month==10) {
            mesesito= "Octubrecito";
        }
        if (month==11) {
            mesesito= "Noviembre";
        }
        if (month==12) {
            mesesito= "Diciembre";
        }

        var s = {};
        s.url = 'afp/RHListEjercicioMes/';
        s.fields = ['idejerciciomes','Mes'];
        s.pageSize = 15;
        var storeem = Escritorio.Funciones.StoreSimple(s);

        if(Ext.getCmp('CmbEjercicios2')){
            Ext.getCmp('CmbEjercicios2').destroy();
        }
        var CmbEjercicios2 = Ext.create('Ext.form.ComboBox', {
            id:'CmbEjercicios2',
            name: 'CmbEjercicios2',
            width: 200,
            store: storeem,
            queryMode: 'remote',
            displayField: 'Mes',
            valueField  : 'idejerciciomes',
            forceSelection : true,
            autoSelect: false,
            allowBlank: false,
            emptyText : mesesito,
            minChars: 1,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +
                        '<h3></span>{Mes}'+'</h3>'+
                    '</a>';
                }
            }
            });
            storeem.loadPage(1);

    CmbEjercicios2.on('select',function(combo){
    if(combo.getValue()){
            IdEjercicios3 =combo.getValue();
            return Escritorio.Funciones.CARGADATAREPORTEAFPNET(IdEjercicios3,IdMesReporte);

    }
    }); 

    return CmbEjercicios2;
},

cambiarNombresMeses : function(){
   // jsonStore.reload();
   // jsonStore.load();
        var fechaHoy = new Date();
        var month = fechaHoy.getMonth();
        var mesesito
        if (month==5||month==6||month==7||month==8||month==9||month==10) {
            mesesito= "1";
        }else{
            mesesito = "2";
        }
        //alert(mesesito);
    return mesesito;
},
cambiarNombresMeses2 : function(mesesito){
   // jsonStore.reload();
   // jsonStore.load();
    return mesesito;
},
CmbProyectoCTSP : function (p){

        var s = {};
            s.url = 'ctserv/ListProyectos';
            s.fields =  ['IdProyecto','Codigo','Proyecto'];
            s.pageSize = 9999;
        var storeem  =   Escritorio.Funciones.StoreSimple(s);

        var CmbProyectoCTSP = Ext.create('Ext.form.ComboBox', {
            store: storeem,
            enableKeyEvents:true,
            id:'CmbProyectoCTSP',
            name: 'IdProyecto',
            displayField: 'Proyecto',
            forceSelection : true,
            queryMode: 'remote',
            overflow: true,
            valueField: 'IdProyecto',
            emptyText : 'Seleccione Proyecto',
            pageSize: 9999,

            typeAhead: true,
            minChars:1,
            typeAheadDelay: 0,

            width: 400,
            renderTo: Ext.get('divproyecto'),
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +
                        '<h3></span>{Proyecto}'+'</h3>' +
                        '<h4 class="nombrecorto">Codigo: {Codigo}</h4>' +
                    '</a>';
                }
            }
        });
        storeem.loadPage(1);
    },

CmbCCostoCTSP : function (p){
        var s = {};
            s.url = 'ctserv/ListCCosto/'+p.IdProyecto;
            s.fields =   ['IdCCosto','CCosto','Codigo'];
            s.pageSize = 9999;
        var storeem  =   Escritorio.Funciones.StoreSimple(s);
            
        var CmbCCostoCTSP = Ext.create('Ext.form.ComboBox', {
            store: storeem,
            enableKeyEvents:true,
            id:'CmbCCostoCTSP',
            name: 'IdCCosto',
            displayField: 'Codigo',
            forceSelection : true,
            queryMode: 'remote',
            pageSize : 9999,

            typeAhead: true,
            minChars:1,
            typeAheadDelay: 0,
            
            valueField  : 'IdCCosto',
            emptyText : 'Seleccione Centro Costo',
            width: 400,
            renderTo: Ext.get('divccosto'),
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +
                        '<h3></span>{CCosto}'+'</h3>' +
                        '<h4 class="nombrecorto">Codigo: {Codigo}</h4>' +
                    '</a>';
                }
            }
        });

        storeem.loadPage(1);


    },

CmbPersonal : function (p){

            var s = {};
            s.url = 'prestamo/autoriza/'+p.idpersonal;
            s.fields = ['Id','Personal','Dni'];
            s.pageSize = 15;
            var storeem = Escritorio.Funciones.StoreSimple(s);
            //storeem.loadPage(1);

            if(Ext.getCmp('CmbPersonal')){Ext.getCmp('CmbPersonal').destroy() }

            var CmbPersonal = Ext.create('Ext.form.ComboBox', {
            store: storeem,
            enableKeyEvents:true,
            id:'CmbPersonal',
            name: 'CmbPersonal',
            displayField: 'Personal',
            forceSelection : true,
            queryMode: 'remote',
            pageSize : 15,
            //triggerAction: 'all',
            valueField  : 'Id',
            emptyText : 'Persona que Autoriza',
            width: 400,
            renderTo: Ext.get('DivAutorizadoPor'),
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +
                        '<h3></span>{Personal}'+'</h3>'+
                        '<h5 class="ccpp">DNI: {Dni}</h5>' +
                    '</a>';
                }
            }
            });

            storeem.loadPage(1);
            //return CmbPersonal;
    },

ComboProyectoAsistencia: function(opts){
            var s = {};
            s.url = 'proyecto/index';
            s.fields =   ['IdProyecto','Codigo','Proyecto'];
            s.pageSize = 15;
            var storeem  =   Escritorio.Funciones.StoreSimple(s);
            //storeem.loadPage(1);

            var CmbProyecto = Ext.create('Ext.form.ComboBox', {
            store: storeem,
            enableKeyEvents:true,
            id:'Comboproyectox',
            displayField: 'Proyecto',
            forceSelection : true,
            queryMode: 'remote',
            pageSize : 15,
            //triggerAction: 'all',

            valueField  : 'IdProyecto',
            emptyText : 'Todos',
            width:250,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +
                        '<h3></span>{Proyecto}'+'</h3>' +
                        '<h4 class="nombrecorto">Codigo: {Codigo}</h4>' +
                    '</a>';
                }
            }
            });
            storeem.loadPage(1);
            return CmbProyecto;
},

CmbPersonalAsistencia : function (){
            var s = {};
            s.url = 'personal/PersonalActivo/';
            s.fields =   ['Id','Personal','Dni'];
            s.pageSize = 15;
            var storeem  =   Escritorio.Funciones.StoreSimple(s);
            //storeem.loadPage(1);

            var CmbPersonal = Ext.create('Ext.form.ComboBox', {
            store: storeem,
            enableKeyEvents:true,
            id:'CmbPersonal',
            displayField: 'Personal',
            forceSelection : true,
            queryMode: 'remote',
            pageSize : 15,
            //triggerAction: 'all',

            valueField  : 'Id',
            emptyText : 'Todos',
            width:250,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +
                        '<h3></span>{Personal}'+'</h3>'+
                        '<h5 class="ccpp">DNI: {Dni}</h5>' +
                    '</a>';
                }
            }
            });
            storeem.loadPage(1);
            return CmbPersonal;
    },
CmbTipoTrabajador : function (){

            //var vector = opts.vector.split("#");
            var s = {};
            s.url = 'tipotrabajador/indexC/';
            s.fields =   ['Id','Tipo'];
            var storeem  =   Escritorio.Funciones.StoreSimple(s);
            storeem.loadPage(1);

            var comboejerciciomes = Ext.create('Ext.form.ComboBox', {
            store: storeem,
            enableKeyEvents:true,
            id:'CmbTipoTrabajador',
            displayField: 'Tipo',
            forceSelection : true,
            queryMode: 'local',
            //triggerAction: 'all',
            valueField  : 'Id',
            emptyText : 'Empleado',
            width:100,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +
                        '<h3></span>{Tipo}'+'</h3>'+
                    '</a>';
                }
            }
            });

            storeem.loadPage(1);
            return comboejerciciomes;

    },
CmbEjerciciomes : function (opts){

            var vector = opts.vector.split("#");
            var s = {};
            s.url = 'ejerciciomes/index/'+vector[0];
            s.fields =   ['Id','Mes','Vigencia'];
            //s.pageSize = 15;
            opts.storeem  =   Escritorio.Funciones.StoreSimple(s);

            var comboejerciciomes = Ext.create('Ext.form.ComboBox', {
            store: opts.storeem,
            enableKeyEvents:true,
            id:'Comboejerciciomes',
            displayField: 'Mes',
            forceSelection : true,
            //min
            queryMode: 'local',
            //triggerAction: 'all',
            valueField  : 'Id',
            emptyText : vector[3] != '0'  ? ' '+vector[3]:'Mes',
            width:100,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +
                        '<h3></span>{Mes}'+'</h3>'+
                    '</a>';
                }
            }
            });

            opts.storeem.loadPage(1);
/*
comboejerciciomes.on('select',function(combo){
    //alert('Hola');
    if(combo.getValue()){
        opts.store.setProxy({type: 'ajax',
                    url: opts.urlx + combo.getValue(),
                    reader: {
                        type: 'json',
                        root: 'grid',
                        totalProperty: 'total'//<-- Total de registros a paginar
                    }
                }); 
        opts.store.load();
    }
    }); */

            return comboejerciciomes;
            
    },  
ComboEjerciciomes : function (opts){
            
            var vector = opts.vector.split("#");
            var s = {};
            s.url = 'ejerciciomes/index/'+vector[0];
            s.fields =   ['Id','Mes','Vigencia'];
            //s.pageSize = 15;
            opts.storeem  =   Escritorio.Funciones.StoreSimple(s);
            
            var comboejerciciomes = Ext.create('Ext.form.ComboBox', {
            store: opts.storeem,
            enableKeyEvents:true,
            id:'Comboejerciciomes',
            displayField: 'Mes',
            forceSelection : true,
            //min
            queryMode: 'local',
            //triggerAction: 'all',
            valueField  : 'Id',
            emptyText : vector[3] != '0'  ? ' '+vector[3]:'Mes',
            width:100,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +
                        '<h3></span>{Mes}'+'</h3>'+
                    '</a>';
                }
            }
            });
            
            opts.storeem.load();

//comboejerciciomes.on('select',function(combo){
//    //alert('Hola');
//    if(combo.getValue()){
//        opts.store.setProxy({type: 'ajax',
//                    url: opts.urlx + combo.getValue(),
//                    reader: {
//                        type: 'json',
//                        root: 'grid',
//                        totalProperty: 'total'//<-- Total de registros a paginar
//                    }
//                }); 
//        opts.store.load();
//    }
//    }); 

            return comboejerciciomes;

    },
ComboEjercicio : function (opts){

            var vector = opts.vector.split("#");
            var s = {};
            s.url = 'ejercicio/index';
            s.fields =   ['Id','Anio','EstadoP'];
            //s.pageSize = 15;
            s.store  =   Escritorio.Funciones.StoreSimple(s);

            var comboejercicio = Ext.create('Ext.form.ComboBox', {
            store: s.store,
            enableKeyEvents:true,
            id:'Comboejercicio',
            displayField: 'Anio',
            forceSelection : true,
            //value:,
            queryMode: 'local',
            //triggerAction: 'all',
            valueField  : 'Id',
            emptyText : vector[1]>0 ? ' '+vector[1]:'Ejercicio',
            width:100,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +
                        '<h3></span>{Anio}'+'</h3>'+
                    '</a>';
                }
            }
            //pageSize: 15,
            });
            
            s.store.load();

comboejercicio.on('select',function(combo){
    if(combo.getValue()){
        /*p.formulario.down('#IdPosicion').setValue("");

        p.idarea = combo.getValue();
        p.rawarea = combo.getRawValue();

        p.comboposicion.clearValue();p.comboposicion.enable(true);p.comboposicion.setRawValue("Seleccione Cargo");
        p.rawposicion = "Seleccione Cargo";*/
        Ext.getCmp('Comboejerciciomes').clearValue();
        Ext.getCmp('Comboejerciciomes').setRawValue('Mes');//

        opts.storeem.setProxy({type: 'ajax',
                    url: 'ejerciciomes/index/' + combo.getValue(),
                    reader: {
                        type: 'json',
                        root: 'grid',
                        totalProperty: 'total'//<-- Total de registros a paginar
                    }
                }); 
        opts.storeem.load();
    }
    }); 

            return comboejercicio;
            
    },
    ComboEstadov : function (p){
            
            var s = {};
            s.url = 'estadovegetativo/index';
            s.fields =   ['Id','Estadovegetativo','Clase'];
            s.pageSize = 15;
            s.store  =   Escritorio.Funciones.StoreSimple(s);
            
            p.comboev = Ext.create('Ext.form.ComboBox', {
            store: s.store,
            enableKeyEvents:true,
            id:'Comboestadovx',
            displayField: 'Estadovegetativo',
            forceSelection : true,
            queryMode: 'remote',
            triggerAction: 'all',
            valueField  : 'Id',
            emptyText : 'Seleccione Estado',
            width:250,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +
                        '<h3></span>{Estadovegetativo}'+'</h3>' +
                        'Clase: {Clase}'+
                    '</a>';
                }
            },
            pageSize: 15,
            renderTo: Ext.get('dividestadovegetativo')
            });
            
            if(p.estadov){
                p.comboev.setRawValue(p.estadov);
            }
            
    },
    ComboResultadoMG : function (p){

            var s = {};
            s.url = 'actividadmejoramientogenetico/index';
            s.fields =   ['Id','Actividad'];
            s.pageSize = 15;
            s.store  =   Escritorio.Funciones.StoreSimple(s);
            p.customTplCombo = Ext.create('Ext.form.ComboBox', {
            store: s.store,
            //enableKeyEvents:true,
            id:'Comboactividadx',
            displayField: 'Actividad',
            forceSelection : true,
            queryMode: 'remote',
            triggerAction: 'all',
            valueField  : 'Id',
            emptyText : 'Seleccione Actividad',
            width:250,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +
                        '<h3></span>{Actividad}'+'</h3>' +'</a>';
                }
            },
            pageSize: 15,
            renderTo: Ext.get('divactividad')
            });

            var a = {};

            a.url = 'resultadomejoramientogenetico/index/'+p.idactividad;
            a.fields =   ['Id','Resultado'];
            a.pageSize = 15;
            a.store  =   Escritorio.Funciones.StoreSimple(a);
            
            var ComboResultado = Ext.create('Ext.form.ComboBox', {
            store: a.store,
            id:'Comboresultadox',
            forceSelection : true,
            minChars : 1,
            disabled:true,
            queryMode: 'remote',
            displayField: 'Resultado',
            triggerAction: 'all',
            valueField  : 'Id',
            emptyText :  'Seleccione Resultado',
            width:250,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +
                        '<h3></span>{Resultado}'+'</h3>' +
                    '</a>';
                }
            },
            pageSize: 15,
            renderTo: Ext.get('divresultado')
            });

            if(p.setRawValue){p.customTplCombo.setRawValue(p.setRawValue);}
            if(p.setRawValueA){ComboResultado.setRawValue(p.setRawValueA);
                ComboResultado.enable();}
            
            if(p.idactividad){ComboResultado.enable();}
            
            a.store.on('beforeload',function(store){
                store.setProxy({type: 'ajax',
                url: 'resultadomejoramientogenetico/index/'+ p.idactividad,
                reader: {
                    type: 'json',
                    root: 'grid',
                    totalProperty: 'total'//<-- Total de registros a paginar    
                }
                //extraParams: {query: Ext.getCmp('Comboresultadox').getRawValue()}
                });
            });
            
            p.customTplCombo.on('select',function(combo,records){  
                ComboResultado.enable();
                ComboResultado.clearValue();
                ComboResultado.setRawValue("");
                a.store.load({url:'resultadomejoramientogenetico/index/'+Ext.getCmp('Comboactividadx').getValue()});
            });
           
            ComboResultado.on('focus',function(combo,records){a.store.load();});

            },
    ComboProductoresAnimal : function (p){

            var s = {};
            s.url = 'productor/index';
            s.fields =   ['Id','Apellidos','Nombres','Sexo','Dni','Productor'];
            s.pageSize = 15;
            s.store  =   Escritorio.Funciones.StoreSimple(s);
            p.customTplCombo = Ext.create('Ext.form.ComboBox', {
            store: s.store,
            enableKeyEvents:true,
            id:'Comboproductorx',
            displayField: 'Productor',
            forceSelection : true,
            queryMode: 'remote',
            triggerAction: 'all',
            valueField  : 'Id',
            emptyText : 'Apellidos y Nombres',
            width:250,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +
                        '<h3></span>{Apellidos}'+" "+'{Nombres}'+'</h3>' +
                        'DNI: {Dni}' +
                    '</a>';
                }
            },
            pageSize: 15,
            renderTo: Ext.get('divproductor')
            });

           var btnpersonal = Ext.create('Ext.Button', {
           id:'bpersonal',
           iconCls :'agregarproductorIcon',
           //text: 'Nuevo Productor',
           margin :'0px 0px 0px 145px',
           renderTo:Ext.get('bcombo'),
           handler : function () {
             var opt = {title : 'Nuevo Productor',
                url : 'productor/create',
                id: 'frmProductor',
                callback : function () {
                            var x = {};
                            x.accion = 'new';
                            Escritorio.Productores.FProductorAlternativo(x);
                        },
                width: 470,
                height :300
            };
            
             Escritorio.Productores.Ventana(opt);
            }
            });
            
           var btnanimal = Ext.create('Ext.Button', {
           id:'banimal',
           //iconCls :'agregarproductorIcon',
           text: 'Vacuno',
           disabled : true,
           margin :'0px 0px 0px 145px',
           renderTo:Ext.get('banimal'),
           handler : function () {
             var opt = {title : 'Nuevo Animal',
                url : 'animal/create',
                id: 'frmAnimal',
                callback : function () {
                            var x = {};
                            x.accion = 'new';
                            x.idproductor = p.idproductor;
                            Escritorio.Productores.FAnimalpopup(x);
                        },
                width: 610,
                height :350
            };
             Escritorio.Productores.Ventana(opt);
            }
            });

            var a = {};
            a.url = 'animal/index/'+p.idproductor;
            a.fields =   ['Id','Nombre','Categoria','Raza'];
            a.pageSize = 15;
            a.store  =   Escritorio.Funciones.StoreSimple(a);
            
            p.ComboAnimal = Ext.create('Ext.form.ComboBox', {
            store: a.store,
            enableKeyEvents:true,
            id:'Comboanimalx',
            disabled:true,
            displayField: 'Nombre',
            forceSelection : true,
            queryMode: 'remote',
            triggerAction: 'all',
            valueField  : 'Id',
            emptyText : 'Seleccione Animal',
            width:250,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +
                        '<h3></span>{Nombre}'+'</h3>' +
                        'Cat : {Categoria}<br>' +
                        'Raza: {Raza}' +
                    '</a>';
                }
            },
            pageSize: 15,
            renderTo: Ext.get('divanimal')
            });
            
            if(p.setRawValue){
                p.customTplCombo.setRawValue(p.setRawValue);
            }
            if(p.setRawValueA){
                p.ComboAnimal.setRawValue(p.setRawValueA);
                p.ComboAnimal.enable();
            }
            if(p.idproductor){
                p.ComboAnimal.enable();
            }
            
            a.store.on('beforeload',function(store){
                store.setProxy({type: 'ajax',
                            url: 'animal/index/' + p.idproductor,
                            reader: {
                                type: 'json',
                                root: 'grid',
                                totalProperty: 'total'//<-- Total de registros a paginar
                            }
                            //start:0,
                            //extraParams: {query: Ext.getCmp('Comboanimalx').getRawValue()}
                            
                        });
            });

           
            p.customTplCombo.on('select',function(combo,records){  

            Ext.getCmp('Comboanimalx').enable();
            Ext.getCmp('Comboanimalx').setRawValue("");
            a.store.load({url:'animal/index/'+Ext.getCmp('Comboproductorx').getValue()});

            });
            
            p.ComboAnimal.on('focus',function(combo,records){a.store.load();});

    },   
    Recepcionista : function (p){
            var s = {};
            s.url = 'productor/index';
            s.fields =   ['Id','Apellidos','Nombres','Sexo','Dni','Productor'];
            s.pageSize = 15;
            s.store  =   Escritorio.Funciones.StoreSimple(s);
            
            p.customTplCombox = Ext.create('Ext.form.ComboBox', {
            store: s.store,
            disabled : true,
            enableKeyEvents:true,
            id:'Comborecepcionistax',
            displayField: 'Productor',
            forceSelection : true,
            queryMode: 'remote',
            triggerAction: 'all',
            valueField  : 'Id',
            emptyText : 'Apellidos y Nombres',
            width:250,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +
                        '<h3></span>{Apellidos}'+" "+'{Nombres}'+'</h3>' +
                        'DNI: {Dni}' +
                    '</a>';
                }
            },
            pageSize: 15
            });
            
           var btnpersonalx = Ext.create('Ext.Button', {
           id:'bpersonalx',
           iconCls :'agregarproductorIcon',
           margin :'0px 0px 0px 0px',
           handler : function () {
             var opt = {title : 'Nuevo Productor',
                url : 'productor/create',
                id: 'frmProductor',
                callback : function () {
                            var x = {};
                            x.accion = 'new';
                            Escritorio.Productores.FProductorAlternativo(x);
                        },
                width: 470,
                height :300
            };
             Escritorio.Productores.Ventana(opt);
        }
        });

            if(p.setRawValue){
                p.customTplCombo.setRawValue(p.setRawValue);
            }

            s.store.on('load',function(store){
                store.setProxy({type: 'ajax',
                            url: 'productor/index',
                            reader: {
                                type: 'json',
                                root: 'grid',
                                totalProperty: 'total'//<-- Total de registros a paginar
                            },
                            start:0,
                            extraParams: {query: Ext.getCmp('Comboproductorx').getRawValue()}});
            });
            
            
 //Crear Opciones de Busqueda           
Ext.create('Ext.form.Panel', {
    //bodyPadding: 10,
    width: 400,
    border:false,
    bodyStyle: 'background-color: rgba(251, 252, 252, 0.0);',
    items: [
        {
            xtype: 'radiogroup',
            items: [
                {
                    boxLabel  : 'Mismo Productor',
                    name      : 'topping',
                    inputValue: '1',
                    checked   : true,
                    id        : 'checkbox1'
                }
            ]
        },
                {
            xtype: 'radiogroup',
            columns: [80, 260, 50],
            items: [
                {
                    boxLabel  : 'Otro',
                    name      : 'topping',
                    inputValue: '2',
                    id        : 'checkbox2'
                },p.customTplCombox,btnpersonalx
            ]
        }
    ],
    renderTo: Ext.get('divrecepcionista')
});
if(p.seleccion == 2){
    Ext.getCmp('checkbox2').setValue(2);
    Ext.getCmp('Comborecepcionistax').enable();
}
if(p.setRawValuer){
                p.customTplCombox.setRawValue(p.setRawValuer);
            }


    },  
    ComboUbicacion : function (p){
            var s = {};
            s.url = 'caserio/index';
            s.fields =   ['Id','Caserio','Centropoblado','Distrito'];
            s.pageSize = 15;
            s.store  =   Escritorio.Funciones.StoreSimple(s);
            
            p.Comboubicacion = Ext.create('Ext.form.ComboBox', {
            store: s.store,
            enableKeyEvents:true,
            minChars : 2,
            id:'Comboubicacionx',
            displayField: 'Caserio',
            forceSelection : true,
            queryMode: 'remote',
            triggerAction: 'all',
            valueField  : 'Id',
            emptyText : 'Seleccione Caserio',
            width:300,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +
                        '<h3></span>{Caserio}'+'</h3>' +
                        '<h4 class="ccpp">CCPP: {Centropoblado}</h4>' +
                        '<h5 class="ccpp">DIST: {Distrito}</h5>' +
                    '</a>';
                }
            },
            pageSize: 15,
            renderTo: Ext.get('divubicacion')
            });

           if(p.caserio){
                p.Comboubicacion.setRawValue(p.caserio);
            }
    },   
    ComboUbicacionp : function (p){
            var s = {};
            s.url = 'caserio/index';
            s.fields =   ['Id','Caserio','Centropoblado','Distrito'];
            s.pageSize = 15;
            s.store  =   Escritorio.Funciones.StoreSimple(s);
            
            p.Comboubicacionp = Ext.create('Ext.form.ComboBox', {
            store: s.store,
            enableKeyEvents:true,
            minChars : 2,
            id:'Comboubicacionxp',
            displayField: 'Caserio',
            forceSelection : true,
            queryMode: 'remote',
            triggerAction: 'all',
            valueField  : 'Id',
            emptyText : 'Seleccione Caserio',
            width:300,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +
                        '<h3></span>{Caserio}'+'</h3>' +
                        '<h4 class="ccpp">CCPP: {Centropoblado}</h4>' +
                        '<h5 class="ccpp">DIST: {Distrito}</h5>' +
                    '</a>';
                }
            },
            pageSize: 15,
            renderTo: Ext.get('divubicacionp')
            });

           if(p.caseriop){
                p.Comboubicacionp.setRawValue(p.caseriop);
            }
    },    
    Combotematecnico : function (p){
            var s = {};
            s.url = 'tematecnico/pasto';
            s.fields =   ['Id','Tematecnico','Descripcion'];
            s.pageSize = 15;
            s.store  =   Escritorio.Funciones.StoreSimple(s);
            
            p.Combotematecnicop = Ext.create('Ext.form.ComboBox', {
            store: s.store,
            enableKeyEvents:true,
            minChars : 2,
            id:'Combotematecnicox',
            displayField: 'Tematecnico',
            forceSelection : true,
            queryMode: 'remote',
            triggerAction: 'all',
            valueField  : 'Id',
            emptyText : 'Seleccione Tema Tecnico',
            width:300,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +
                        '<h3></span>{Tematecnico}'+'</h3>' +
                        '<h4 class="ccpp">{Descripcion}</h4>' +
                    '</a>';
                }
            },
            pageSize: 15,
            renderTo: Ext.get('divtematecnico')
            });

           if(p.tematecnicop){
                p.Combotematecnicop.setRawValue(p.tematecnicop);
            }
    },    
    Combocategoriaanimal : function (p){
            var s = {};
            s.url = 'categoriaanimal/index';
            s.fields =   ['Id','Categoria','Especie'];
            s.pageSize = 15;
            s.store  =   Escritorio.Funciones.StoreSimple(s);
            
            p.Combocategoria = Ext.create('Ext.form.ComboBox', {
            store: s.store,
            enableKeyEvents:true,
            minChars : 2,
            id:'Combocategoriax',
            displayField: 'Categoria',
            forceSelection : true,
            queryMode: 'remote',
            triggerAction: 'all',
            valueField  : 'Id',
            emptyText : 'Seleccione Categoria',
            width:170,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +
                        '<h3></span>{Categoria}'+'</h3>' +
                        '<h4 class="ccpp">Especie: {Especie}</h4>' +
                    '</a>';
                }
            },
            pageSize: 15,
            renderTo: Ext.get('divcategoriaanimal')
            });
           
           if(p.categoria){
                p.Combocategoria.setRawValue(p.categoria);
            }

    },    
    ComboEspecie : function (p){
            var s = {};
            s.url = 'categoriaanimal/index';
            s.fields =   ['Id','Categoria','Especie'];
            s.pageSize = 15;
            s.store  =   Escritorio.Funciones.StoreSimple(s);
            
            p.categoria = Ext.create('Ext.form.ComboBox', {
            store: s.store,
            enableKeyEvents:true,
            minChars : 2,
            id:'Combocategoriax',
            displayField: 'Categoria',
            forceSelection : true,
            queryMode: 'remote',
            triggerAction: 'all',
            valueField  : 'Id',
            emptyText : 'Seleccione Categoria',
            width:270,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +
                        '<h3></span>{Categoria}'+'</h3>' +
                        '<h4 class="ccpp">Especie: {Especie}</h4>' +
                    '</a>';
                }
            },
            pageSize: 15,
            renderTo: Ext.get('divcategoriaanimal')
            });
            
            var r = {};
            r.url = 'razaanimal/index';
            r.fields =   ['Id','Raza','Especie'];
            r.pageSize = 15;
            r.store  =   Escritorio.Funciones.StoreSimple(r);
            
            p.craza = Ext.create('Ext.form.ComboBox', {
            store: r.store,
            enableKeyEvents:true,
            minChars : 2,
            id:'Comborazax',
            displayField: 'Raza',
            forceSelection : true,
            queryMode: 'remote',
            triggerAction: 'all',
            valueField  : 'Id',
            emptyText : 'Seleccione Raza',
            width:270,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +
                        '<h3></span>{Raza}'+'</h3>' +
                        '<h4 class="ccpp">Especie: {Especie}</h4>' +
                    '</a>';
                }
            },
            pageSize: 15,
            renderTo: Ext.get('divrazaanimal')
            });

           if(p.editcategoria){p.categoria.setRawValue(p.editcategoria);}

           if(p.editraza){p.craza.setRawValue(p.editraza);}
            
    },    
    ComboProductores : function (p){
//        if(!Ext.getCmp('Comboproductorx'))
//            {
            var s = {};
            s.url = 'productor/index';
            s.fields =   ['Id','Apellidos','Nombres','Sexo','Dni','Productor'];
            s.pageSize = 15;
            s.store  =   Escritorio.Funciones.StoreSimple(s);
            p.customTplCombo = Ext.create('Ext.form.ComboBox', {
            store: s.store,
            enableKeyEvents:true,
            id:'Comboproductorx',
            displayField: 'Productor',
            forceSelection : true,
            queryMode: 'remote',
            triggerAction: 'all',
            valueField  : 'Id',
            emptyText : 'Apellidos y Nombres',
            width:300,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +
                        '<h3></span>{Apellidos}'+" "+'{Nombres}'+'</h3>' +
                        'DNI: {Dni}' +
                    '</a>';
                }
            },
            pageSize: 15,
            //autoRender :true
            renderTo: Ext.get('divproductor')
            });
            
           var btnpersonal = Ext.create('Ext.Button', {
           id:'bpersonal',
           iconCls :'agregarproductorIcon',
           //text: 'Nuevo Productor',
           margin :'0px 0px 0px 230px',
           renderTo:Ext.get('bcombo'),
           handler : function () {
             var opt = {title : 'Nuevo Productor',
                url : 'productor/create',
                id: 'frmProductor',
                callback : function () {
                            var p = {};
                            p.accion = 'new';
                            Escritorio.Productores.FProductorAlternativo(p);
                        },
                width: 470,
                height :300
            };
             Escritorio.Productores.Ventana(opt);
        }
        });
        /*
        var btnpersonalreniec = Ext.create('Ext.Button', {
           id:'bpersonal',
           //iconCls :'agregarproductorIcon',
           text: 'R',
           margin :'0px 0px 0px 230px',
           renderTo:Ext.get('bcombo'),
           handler : function () {
                var ventana1 = new Ext.Window({
                id:'reniec',
                title:'Consultar DNI Productor',
                width: 650,
                height: 500,
                draggable: true,
                autoScroll: true,
                bodyStyle: "padding : 0px; border : 1px solid #99bbe8",
                modal: true,
                html:'<iframe src="https://cel.reniec.gob.pe/valreg/valreg.do" style="width:100%;height:100%;border:none;"></iframe>', 
                constrainHeader: true
            });
            ventana1.show();
        }
        });*/
            //Eventos
            //keyup( Ext.form.field.Text this, Ext.EventObject e, Object eOpts )
            /*
            customTplCombo.on('keyup',function(texto,e,o){
                    //alert(texto.getRawValue());
                    //s.store.loadPage(1);
                    if(texto.getRawValue().length >=4)
                        s.store.loadPage(1)
            });
*/
            //alert(p.customTplCombo.getPosition(false));
            if(p.setRawValue){
               // customTplCombo.clearValue();
                //customTplCombo.setActive(true)
                p.customTplCombo.setRawValue(p.setRawValue);
            }

            s.store.on('load',function(store){
                store.setProxy({type: 'ajax',
                            url: 'productor/index',
                            reader: {
                                type: 'json',
                                root: 'grid',
                                totalProperty: 'total'//<-- Total de registros a paginar
                            },
                            start:0,
                            extraParams: {query: Ext.getCmp('Comboproductorx').getRawValue()}});
            });
//                }
//                else
//                    {Ext.getCmp('Comboproductorx').setPagePosition(386,301);
//                    alert('OK');}
                },
                CmbTipoAfiliacion: function () {

                    //var vector = opts.vector.split("#");
                    var s = {};
                    s.url = 'tipoafiliacion/index/';
                    s.fields = ['Id', 'Nombre'];
                    var storeem = Escritorio.Funciones.StoreSimple(s);
                    storeem.loadPage(1);

                    var combotipoafiliacion = Ext.create('Ext.form.ComboBox', {
                        store: storeem,
                        enableKeyEvents: true,
                        id: 'CmbTipoAfiliacion',
                        displayField: 'Nombre',
                        forceSelection: true,
                        queryMode: 'remote',
                        //triggerAction: 'all',
                        valueField: 'Id',
                        emptyText: 'Nombre',
                        width: 100,
                        listConfig: {
                            loadingText: 'Buscando...',
                            emptyText: 'Sin Resultados',
                            getInnerTpl: function () {
                                return '<a>' +
                        '<h3></span>{Nombre}' + '</h3>' +
                    '</a>';
                            }
                        },
                        pageSize: 15,
                        renderTo: Ext.get('combotipoafiliacion')
                    });

//                    storeem.loadPage(1);
//                    return combotipoafiliacion;

//                    -----------
//                    SistemaPension : function (p){
//            
//            var crh = {};
//            crh.url = 'sistemapension/index';
//            crh.fields =   ['Id','Nombre','Descripcion'];
//            crh.pageSize = 15;
//            crh.store  =   Escritorio.Funciones.StoreSimple(crh);
//            
//            p.sistemapension = Ext.create('Ext.form.ComboBox', {
//            store: crh.store,
//            enableKeyEvents:true,
//            id:'Combosistemapensionx',
//            displayField: 'Descripcion',
//            forceSelection : true,
//            queryMode: 'remote',
//            triggerAction: 'all',
//            valueField  : 'Id',
//            emptyText : p.rawsistemapension||'Sistema Pensiones',
//            width:250,
//            listConfig: {
//                loadingText: 'Buscando...',
//                emptyText: 'Sin Resultados',
//                getInnerTpl: function() {
//                    return '<a>' +
//                        '<h3></span>{Descripcion}'+'</h3>' +
//                        '<h4 class="nombrecorto">{Nombre}</h4>' +
//                    '</a>';
//                }
//            },
//            pageSize: 15,
//            renderTo: Ext.get('divIdSistemaPensiones')
//            });
//            ----------

                },
    ComboCategoria: function (p){
//        if(!Ext.getCmp('Comboproductorx'))
//            {
            var s = {};
            s.url = 'categoriaanimal/index';
            s.fields =   ['Id','Categoria','Especie'];
            s.pageSize = 15;
            s.store  =   Escritorio.Funciones.StoreSimple(s);
            p.combocategoria = Ext.create('Ext.form.ComboBox', {
            store: s.store,
            enableKeyEvents:true,
            id:'Combocategoriax',
            displayField: 'Categoria',
            forceSelection : true,
            queryMode: 'remote',
            triggerAction: 'all',
            valueField  : 'Id',
            emptyText : 'Seleccione Categoria',
            width:160,
            listConfig: {
                loadingText: 'Buscando...',
                emptyText: 'Sin Resultados',
                getInnerTpl: function() {
                    return '<a>' +
                        '<h3></span>{Categoria}'+'</h3>' +
                        'Especie: {Especie}' +
                    '</a>';
                }
            },
            pageSize: 15,
            //autoRender :true
            renderTo: Ext.get('divcategoriaanimal')
            });
            /*
           var btnpersonal = Ext.create('Ext.Button', {
           id:'bpersonal',
           iconCls :'agregarproductorIcon',
           //text: 'Nuevo Productor',
           margin :'0px 0px 0px 230px',
           renderTo:Ext.get('bcombo'),
           handler : function () {
             var opt = {title : 'Nuevo Productor',
                url : 'productor/create',
                id: 'frmProductor',
                callback : function () {
                            var p = {};
                            p.accion = 'new';
                            Escritorio.Productores.FProductorAlternativo(p);
                        },
                width: 470,
                height :300
            };
             Escritorio.Productores.Ventana(opt);
        }
        });
        */

            if(p.categoriaanimal){p.combocategoria.setRawValue(p.categoriaanimal);}
/*
            s.store.on('load',function(store){
                store.setProxy({type: 'ajax',
                            url: 'productor/index',
                            reader: {
                                type: 'json',
                                root: 'grid',
                                totalProperty: 'total'//<-- Total de registros a paginar
                            },
                            start:0,
                            extraParams: {query: Ext.getCmp('Combocategoriax').getRawValue()}});
            });
*/
    }
}